您的位置:首页 > 其它

提交按钮点击后变灰色(不能再点),页面处理完毕后变为正常,避免重复提交

2008-10-29 10:15 288 查看
这是一个很古董的问题,以前写程序呢,也不在意^_^,但软件有客户提出偶尔会出现重复提交的问题,此种情况基本都是出现在网速慢,客户等不及,而再次点击提交按钮的情况下,今儿找了段脚本,解决下,也算是对用户体验的一个提升吧.

方法一(测试通过)
Javascript

function disableBtn()

{

var ok=document.getElementById('Button3');

ok.disabled = true;

return true;

}
Page_Load

if (!Page.IsPostBack)

{

System.Text.StringBuilder s = new System.Text.StringBuilder();

s.Append("disableBtn();");

s.Append(this.GetPostBackEventReference(this.Button3));

this.Button3.Attributes.Add("onclick", s.ToString());

}
方法二:未测试
用cs代码的enabled=false在页面提交并返回之前是不会立即有效果的!除非用js。

如果是提交表单,可以在submit按纽事件里写document.all.button1.disabled=true;
如果是ImageButton,在js里设置按纽的width=0

<script language="javascript">

//----------只提交一次(隐藏提交按纽)cmdButton一般是Immagebutton

function submitonce()

{

var cmdButton=document.all.ImageButton1;

if(cmdButton != null)

{

cmdButton.clearAttributes();

cmdButton.width=0;

}

}

if(document.all.ImageButton1!=null)

document.all.ImageButton1.onclick = submitonce;

</script>
未完待续.....
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: