程序介绍:
1.方法一:hiddenForm 隐藏表单法: 查看函数 hiddenForm
2.方法二:disButtons 禁用按钮法: 查看函数 disButtons disButtons2
3.本程序为客户端javascript程序限制多次提交,冰河原创首发蓝色理想,欢迎大家转载,但请保留本人信息,谢谢
4.源码发布在我的手机主题站: http://www.qumiao.com/javascript/disRepSubmit.rar (本人所有原创程序均打包发在此)
5.作者邮箱及QQ: binghe6218163.com 369768917 (加好友时请提醒:程序交流)
函数源码:
以下是引用片段 by alixixi.com: function checkform(frm) { //下面这一行是普通的验证判断 if(frm.keyword.value==""){alert(’“手机主题名称”不能为空’); frm.keyword.focus();return false} //重点在这, 在验证完之后执行如下函数可以防止表单数据重复提交 //disButtons(); //函数调用1 //disButtons2(); //或函数调用2 hiddenForm(frm); //或函数调用3 } |
/*
函数名称:hiddenForm
函数功能:提交时让表单自动隐藏,而不影响数据的提交
*/
以下是引用片段 by alixixi.com: function hiddenForm(frm) { //waitStr 提交过程中出现的提示,可以自行设置 var waitStr = "<center> Waiting...</center>"; frm.innerHTML = "<div } |
/*
函数名称:disButtons
函数功能:提交前,将所有表单中的button,reset,submit禁用disabled;
如果是submit按钮,则添加与之相同隐藏文本框hidden对象,让提交的信息无一漏网
作者: 冰河
*/
以下是引用片段 by alixixi.com: function disButtons() { for(k=0;k<document.all.length;k++ ) { var obj = document.all(k) if( obj.type==’button’ || obj.type==’submit’ || obj.type==’reset’) { obj.disabled = true if (obj.type==’submit’) { var oNewNode = document.createElement("input"); oNewNode.type = "hidden" oNewNode.name = obj.name oNewNode.value = obj.value //frm.insertAdjacentElement("beforeEnd",oNewNode); obj.insertAdjacentElement("afterEnd",oNewNode); } } } } |
/*
函数名称:disButtons2
函数功能:提交前,将所有表单中的button,reset,submit禁用disabled;
如果是submit按钮,则添加与之相同隐藏文本框hidden对象,让提交的信息无一漏网
作者: 冰河
函数说明:与上面的函数功能一样,但适用浏览器范围更广,推荐使用此函数。
*/
以下是引用片段: function disButtons2() { for(k=0;k<document.forms.length;k++ ) { var frm = document.forms[k] for(i=0;i<frm.length;i++) { var obj = frm.elements[i] if ( obj.type==’button’ || obj.type==’submit’ || obj.type==’reset’ ) { obj.disabled = true if (obj.type==’submit’) { var oNewNode = document.createElement("input"); oNewNode.type = "hidden" oNewNode.name = obj.name oNewNode.value = obj.value //frm.insertAdjacentElement("beforeEnd",oNewNode); obj.insertAdjacentElement("afterEnd",oNewNode); } } } } } |