我有一个禁用的asp.Button,后来我用JavaScript启用了它。喜欢这个
<asp:Button ID="btnSave" runat="server" Text="Save" Enabled="false" OnClientClick="; return ValidateFields();" OnClick="btnSave_Clicked" />
但是,禁用控件时,“onclick”方法不会呈现为html。我的工作是在PageLoad中添加以下代码。
btnSave.Attributes["onclick"] = "return ValidateFields();";
有更方便的解决方法吗?
由于
答案 0 :(得分:17)
您可以将html属性用于禁用
<asp:Button disabled="disabled" ID="btnSave" runat="server" Text="Save" Enabled="false" OnClientClick="; return ValidateFields();" OnClick="btnSave_Clicked" />
我假设您在客户端启用它?如果是,那么你可以用:
启用它document.getElementById('MainContent_btnSave').removeAttribute('disabled'); //or jquery alternative where MainContent_btnSave is the clientid of the control
答案 1 :(得分:2)
嗯,很明显为什么框架的行为如下:如果一个按钮被禁用,为什么它应该有一个onclick
事件处理程序?如果禁用,用户无法单击它!因此,框架删除了属性。
所以,除了手动附加属性之外,我认为你没有其他选择。