禁用 ASP.NET 链接按钮后重新启用它的正确方法是什么

What is the correct way to re-enable an ASP.NET LinkButton after disabling it?

本文关键字:启用 是什么 方法 链接 NET ASP 按钮 新启用 禁用      更新时间:2023-09-26

我已经搜索了两天来找到这个问题的解决方案,但我似乎找不到任何适合我的东西。我有一个在页面加载时被禁用的LinkButton。我像这样禁用按钮:

$("#BtnSubmit").prop("disabled", true);
$("#BtnSubmit").removeAttr("enabled");

当用户填写所有必填字段时,我正在尝试重新启用LinkButton,如下所示:

 $("#BtnSubmit").removeAttr("disabled");

但是,这不起作用。我查看了生成的标记,似乎LinkButton在设置为 disabled 时删除了其 href 属性。简单地删除disabled属性是行不通的。我也尝试像这样添加enabled属性:

$("#BtnSubmit").attr("enabled", "true");

但是,这也不起作用。

我错过了什么?从设计的角度来看,该按钮显然正在重新启用。它从disabled外观到enabled外观都很好,但它没有恢复其href属性。我尝试手动添加href,但这也不起作用。我找到的大多数解决方案都只涵盖了如何禁用按钮;他们似乎都没有提到任何关于重新启用它的事情。有什么建议吗?

如果您能在您的帖子中向我们提供您的 ASPX 标记及其代码,那就太好了。有很多方法可以禁用/启用该按钮。您是通过服务器端还是客户端执行此操作的?我的预感是,您可能将 LinkButton 上的属性设置为 False Enabled,这解释了为什么 href 属性也消失了。

您可以考虑的一种方法是,您可以在Page_Load事件中注册客户端 javascript 代码,当页面重新加载时,代码将被执行。

像这样的东西

var script = "$('#BtnSubmit').prop('disabled', true);";
ScriptManager.RegisterStartupScript(Page, GetType(), "mykey", "script", true);

希望对您有所帮助。

不久

前我遇到了类似的问题。这对我有用:

    $("#BtnSubmit").prop("disabled", true);
    $("#BtnSubmit").prop("disabled", false);

请注意,HTML 属性在页面加载时是这样设置的:

<input type="submit" id="BtnSubmit" disabled="disabled"/>