今天在做项目时,碰到了一个问题,当页面在提交时,若网速太慢,用户可能点击多次提交按钮。这样,导致向数据库中插入了多条相同的记录。在网上搜索了一下,终于得一良方,现在拿出来与大家分享。
//
方法一:在提交时调用一段客户端的代码。
function a()
{
document.getElementById( " btnok " ).value = ' 正在提交
'
;
document.getElementById( " btnok " ).onclick = function(){ return false ;};
return true ;
}
< input id = " btnok " runat = " server " type = " submit " value = " 确定 " onclick = " return a(); "
onserverclick = " Submit1_ServerClick " />
// 方法二:必需要是Asp.net服务器控件。(注意UseSubmitBehavior属性)
< asp:Button ID = " btnSumbit " runat = " server " UseSubmitBehavior = " false "
OnClientClick = " this.value='正在提交
';this.disabled=true;
"
Text = " 提交 " OnClick = " btnSumbit_Click " />
function a()
{
document.getElementById( " btnok " ).value = ' 正在提交
![](https://i-blog.csdnimg.cn/blog_migrate/b854634c0904529d4018c4c3336be836.gif)
document.getElementById( " btnok " ).onclick = function(){ return false ;};
return true ;
}
< input id = " btnok " runat = " server " type = " submit " value = " 确定 " onclick = " return a(); "
onserverclick = " Submit1_ServerClick " />
// 方法二:必需要是Asp.net服务器控件。(注意UseSubmitBehavior属性)
< asp:Button ID = " btnSumbit " runat = " server " UseSubmitBehavior = " false "
OnClientClick = " this.value='正在提交
![](https://i-blog.csdnimg.cn/blog_migrate/b854634c0904529d4018c4c3336be836.gif)
Text = " 提交 " OnClick = " btnSumbit_Click " />