在提交Javascript / HTML时禁用表单

时间:2017-05-11 07:32:38

标签: javascript html forms submit

我有一个表单,如果多次点击,会多次提交。我想禁用表单多次提交。

继承按钮:

 <a style="float:right" onclick="javascript:document.forms['form1'].submit();" class="button"><span><bean:message key="common.continue"/></span></a>

非常感谢任何帮助

3 个答案:

答案 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时调用函数。

HTML

 <a style="float:right" onclick="myFunction()" class="button"><span><bean:message key="common.continue"/></span></a>

的Javascript

    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按钮并设置变量以记住表格已经发送。