表单不提交chrome但在firefox提交

时间:2015-07-31 05:17:37

标签: javascript php

我有一个像下面这样的submmit按钮:

保存&继续

我在js中的功能是:

function checkCreditDebit(buttonValues) {
    //Some validation here

   //Disable Button if once clicked to prevent twice form submission
    document.getElementById('saveandcontinue').disabled = 'disabled';
    document.getElementById('onlysave').disabled = 'disabled';

}

但是当我在firefox中提交表单时,它禁用了" save&继续",按钮并提交表单。但在chrome中它会禁用按钮但不提交表单。有什么问题请建议。在此先感谢

3 个答案:

答案 0 :(得分:6)

不是仅仅禁用您的提交按钮(如果您在文本框中按Enter键也可以提交表单),请在表单中附加一个处理程序,该处理程序将保留一个'类名称'将表单作为表单已经提交的标记,如果用户再次提交表单,处理程序应检查表单是否已经有类名,然后通过event.preventDefault()阻止重复提交。

试试这个:

Start-Process "C:\Program Files (x86)\casper\PuTTY\putty.exe" -Argumentlist  "-ssh", "192.168.1.2", "-l", "casper", "-pw", "<password>", "-m", "\\PROD.MSAD.casp.NET\UserData\CASPER\Home\Documents\pbauth_list.txt", "-t"

Demo here

答案 1 :(得分:-1)

    instead of disabling pervent multiple submit by setting a javascript flag example : 
    <form method="post" id="ecomFormBean" name="ecomFormBean" onsubmit="return checkSubmit(this);" >
 <input type="text" />
    <input type="submit" />
</form>
    <script>
    var formSubmitted = false;
    function checkSubmit(f){
        if (formSubmitted) {
          alert('Please be patient. Your order may take 10 - 15 seconds to process. Thank you!');
          return false;
        }
        else return formSubmitted = true;
    }

    </script>

答案 2 :(得分:-1)

Chrome非常快速地运行javascript。所以你的checkCreditDebit(buttonValues)函数可能是你的php脚本提交表单之前禁用提交按钮的功能。

我建议您在调用javascript函数之前调用setTimeOut函数,以便可以提交表单。

试一试。