gpt4 book ai didi

asp.net - 单击时禁用按钮

转载 作者:可可西里 更新时间:2023-11-01 01:36:17 25 4
gpt4 key购买 nike

我有一个按钮控件。一旦用户点击它,点击事件应该触发,然后按钮应该被禁用。我怎样才能做到这一点?我可以选择使用 JQuery 或 JavaScript 或两者。

这是我的按钮声明:

<asp:Button 
ID="Button1"
runat="server"
Text="Click Me"
onclick="Button1_Click"
/>

在按钮点击代码后面,我添加了一个Response.Write()。那应该被执行,然后按钮应该被禁用

最佳答案

无论出于何种原因,the HTML spec dictates that disabled elements should not be included in POST requests .因此,如果您使用 JavaScript 禁用客户端 onclick 事件中的 HTML 元素,则当浏览器组装 POST 请求时 input 元素将被禁用,服务器将无法正确通知哪个元素引发了回发,它会获胜' 触发服务器端点击事件处理程序。

当您将 UseSubmitBehavior 属性设置为 false 时,ASP.NET 呈现类型为 button 的输入元素,而不是类型为 submit 的常规输入> ASP.NET Button 控件通常生成的。这很重要,因为单击按钮元素不会触发浏览器的表单提交事件。

ASP.NET 不依赖浏览器表单提交,而是在该按钮元素的 onclick 处理程序中呈现对 __doPostBack() 的客户端调用。 __doPostBack 将显式引发回发,无论请求中通过什么 POST 数据。

通过独立于浏览器提交事件引发回发,您可以摆脱前面提到的 HTML 怪癖。然后,您可以设置“this.disabled = true;”的 OnClientClick,它将呈现为“this.disabled = true; __doPostBack('Button1', '');”,一切都会按预期工作。

关于asp.net - 单击时禁用按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/840742/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com