回答
你可以这样做:
CS
//in pageload
//the request is not in postback or async mode
bt1.OnClientClick = "this.disabled = true; " + ClientScript.GetPostBackEventReference(bt1, null) + ";");
注:可以更换 “this.disabled =真”,一个js函数,将有更好的处理来禁用按钮,并且可能还会显示友好的信息。
或者这样:
http://msdn.microsoft.com/en-us/library/bb383989.aspx
JS
Sys.WebForms.PageRequestManager.getInstance().add_initializeRequest(CheckStatus);
function CheckStatus(sender, arg)
{
var postBackElement = arg.get_postBackElement();
var prm = Sys.WebForms.PageRequestManager.getInstance();
if (prm.get_isInAsyncPostBack() && postBackElement.id == "btn1") {
arg.set_cancel(true);
//display friendly message, etc
}
}
注:我修改它,所以它会检查按钮的ID。替换“btn1”
祝你好运!
非常感谢,我终于明白了。什么arg.set_cancel(true);在你的代码中做过? – 2010-09-30 10:47:26
另外,如果我在结束请求中使用postBackElement.disabled = true。它并没有适当地解除封锁。我们必须使用document.getElementById()吗? – 2010-09-30 11:13:13
您使用哪种浏览器和操作系统? – Mouhannad 2010-09-30 11:16:27
您可以使用更新面板的开始和停止消息来禁用您的控件。 例如
<script type="text/javascript">
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_initializeRequest(InitializeRequest);
prm.add_endRequest(EndRequest);
function InitializeRequest(sender, args) {
document.getElementById("ButtonToDisable").disabled = true;
}
function EndRequest(sender, args) {
document.getElementById("ButtonToDisable").disabled = false;
}
</script>
这将触发页面上的每个异步回发点?有没有办法在某个更新面板中的某个按钮点击事件上触发它? – 2010-09-30 07:06:17
@Popo您可以通过阅读“发件人”参数进行过滤,并且只有在某些面板正在更新时才打开它。使用此代码,进行一些调试并查看您到达的消息。 – Aristos 2010-09-30 07:47:18
非常感谢Aristos。 – 2010-09-30 10:41:40
- 1. 更新ASP.NET面板异步
- 2. 异步更新面板_
- 3. 在更新面板中回发后仍然放置的按钮
- 4. 如何禁用更新面板外的按钮?
- 5. 禁用lispworks capi上的单个按钮:按钮面板
- 6. 按钮位于更新面板内。但每个按钮点击整页回发
- 7. asp禁用按钮回发
- 8. Clickonce发布页面突然被禁用'更新'按钮
- 9. 更新面板无法找到触发它的按钮
- 10. 每次按钮导致完整的回发,即使它在更新面板
- 11. 在更新面板中与Telerik Radgrid同步回发
- 12. 页面样式在ModalPopupExtender上被点击更新面板中的gridview中的按钮点击更新面板
- 13. Devexpress按钮在第一次回发后发生禁用按钮
- 14. 按钮刷新页面在回发?
- 15. 使用GridView asp设置更新面板的异步触发器:ButtonField
- 16. 动态链接按钮在更新面板中未触发
- 17. 我可以添加HTML按钮触发更新面板
- 18. 2更新面板总是发回
- 19. 有线更新面板回发问题
- 20. 更新面板,回发和jQuery
- 21. 动态控件回发更新面板
- 22. 禁用按钮回发在JSF2.0
- 23. 禁用回发按钮ASP.NET C#
- 24. 如何使用更新面板内更新进度,当执行代码的按钮位于更新面板外
- 25. 用户面板上的删除按钮
- 26. 异步Facebook按钮
- 27. ASP.NET异步后回asp:按钮点击
- 28. 从gridview中的单选按钮触发异步回调
- 29. 调用Javascript窗体位于更新面板中的ASP.NET按钮
- 30. JSF2 - Primefaces - 用命令按钮没有更新嵌套的面板
你能提供你正在使用的当前代码吗? – NAVEED 2010-09-30 06:13:10