关于禁用按钮的问题

22wolf 2009-01-09 01:15:41
服务器速度太慢,经常有用户等不及多次点击按钮,我希望用户点击按钮一次后把该按钮禁用,以免重复点击。我想到3种办法:
1、在前台document.getElementById("btnSave").disabled='disabled',按钮禁用了,可也不向服务器发送信息了。
2、在后台禁用,可要服务器执行之后才有效,不符合要求。
大家有什么好办法吗?
...全文
187 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
阿彪兄 2009-01-10
  • 打赏
  • 举报
回复
支持一下
善缘2022 2009-01-09
  • 打赏
  • 举报
回复
if(!isPostBack)
{
this.Btn.Enable=true;
}else{
this.Btn.Enable=false;

}
  • 打赏
  • 举报
回复

js 的感觉可行

如果你放到后台设置visbale那肯定不行;一遇到网络延迟说不好就入好几条记录;如果你用后台的话建议你用存储过程 ,
cookies10wen 2009-01-09
  • 打赏
  • 举报
回复
Enable = False
alex_zs 2009-01-09
  • 打赏
  • 举报
回复

document.getElementById("btnSave").disabled='disabled'

就行了。简单的问题无须搞到服务端执行
sharpblade 2009-01-09
  • 打赏
  • 举报
回复
<asp:Button runat="server" ID="BtnSubmit"
OnClientClick="this.disabled = true;"
UseSubmitBehavior="false"
OnClick="BtnSubmit_Click"
Text="Submit" />
mqc507 2009-01-09
  • 打赏
  • 举报
回复
m
HDNGO 2009-01-09
  • 打赏
  • 举报
回复
string script = ClientScript.GetPostBackEventReference(this.Button_OK, null);
if (!Page.IsPostBack)
{
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append("window.document.getElementById(’" + this.Button_OK.ClientID + "’).disabled = true;");
sb.Append(script);
sb.Append(";");
this.Button_OK.Attributes.Add("onclick", sb.ToString());
}


GetPostBackEventReference会生成html代码:

<script type="text/javascript">
<!–
var theForm = document.forms[’form1′];
if (!theForm)
{
theForm = document.form1;
}
function __doPostBack(eventTarget, eventArgument) {
if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
theForm.__EVENTTARGET.value = eventTarget;
theForm.__EVENTARGUMENT.value = eventArgument;
theForm.submit();
}
}
// –>
</script>

生成的script值为__doPostBack(’Button_OK’,'’)

rjzou2006 2009-01-09
  • 打赏
  • 举报
回复
点了禁用了

用JS就可以的。
HDNGO 2009-01-09
  • 打赏
  • 举报
回复

string script = ClientScript.GetPostBackEventReference(this.Button_OK, null);
if (!Page.IsPostBack)
{
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append("window.document.getElementById(’" + this.Button_OK.ClientID + "’).disabled = true;");
sb.Append(script);
sb.Append(";");
this.Button_OK.Attributes.Add("onclick", sb.ToString());
}

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧