我有一个表单,如果多次点击,会多次提交。我想禁用表单多次提交。
继承按钮:
<a style="float:right" onclick="javascript:document.forms['form1'].submit();" class="button"><span><bean:message key="common.continue"/></span></a>
非常感谢任何帮助
答案 0 :(得分:0)
快速而肮脏,无需更改太多代码
只需将html部分更改为:
<a style="float:right" onclick="javascript:document.forms['form1'].submit();this.disabled=true;" class="button"><span><bean:message key="common.continue"/></span></a>
答案 1 :(得分:0)
在提交表单而不是内联js时调用函数。
<a style="float:right" onclick="myFunction()" class="button"><span><bean:message key="common.continue"/></span></a>
var submitForm = true; //For first time submission
function myFunction(){
if(submitForm){
submitForm = false; //do not allow it to be submitted again
document.forms['form1'].submit();
}
}
答案 2 :(得分:0)
如果您关心安全性,则必须在服务器端进行验证。可以轻松绕过Javascript保护。 如果您可以访问服务器代码,则可以检查数据库中是否存在客户端发送的完全相同的信息。
否则你应该结合两种方法,禁用html按钮并设置变量以记住表格已经发送。