我正在尝试在提交时禁用两个ASP.NET按钮,并在回发完成时重新启用它们。要禁用按钮,我使用以下代码:
cmdFiltrar.Attributes.Add("onclick", "javascript:" + cmdFiltrar.ClientID + ".disabled=true;" + ClientScript.GetPostBackEventReference(cmdFiltrar, ""))
cmdExcel.Attributes.Add("onclick", "javascript:" + cmdExcel.ClientID + ".disabled=true;" + ClientScript.GetPostBackEventReference(cmdExcel, ""))
它有效。但是如何才能重新启用它们?我已经尝试过页面加载事件,但似乎没有任何影响。
有什么想法吗?谢谢!
答案 0 :(得分:2)
您没有使用Ajax进行回发。您只是启用客户端脚本(JavaScript
)以使完整的帖子返回服务器(使用__doPostBack
引发事件),除非涉及UpdatePanel
。如果有一个UpdatePanel,它将进行部分回发。无论如何,这是两种情况的解决方案。
将此JavaScript
添加到您的网页。
<script type="text/javascript">
function EnableButton() {
var btn = document.getElementById("<%= cmdFiltrar.ClientID %>");
if (btn.disabled == true) {
btn.disabled = false;
}
}
</script>
如果有完整的回发
在您的身体JavaScript
事件中调用上述onLoad
<body onload="EnableButton();">
如果有部分回发
在UpdatePanel
的客户端onLoad
事件