使用jquery禁用/启用整个表单的提交

Bor*_*ens 6 validation jquery

当我的表单没有验证时,我想禁用表单的提交功能.我可以通过禁用提交按钮来执行此操作,但这将取消选中回车键.
我可以设置.submit(返回false); 但后来我不能再重新启用它.

有什么建议?

Nic*_*ina 13

只是Pim的简化(编辑以提升詹姆斯的贡献):


$('#form').submit(formValidated);
Run Code Online (Sandbox Code Playgroud)


Ale*_*orb 8

我做了以下工作(禁用提交按钮和表单提交):

var condition = true; //check whatever you like
if(condition)
    $('input[type=submit]', this).attr('disabled', 'disabled');
    $('form').bind('submit',function(e){e.preventDefault();});
}else{
    $('input[type=submit]', this).removeAttr('disabled', 'disabled');
    $('form').unbind('submit');
}
Run Code Online (Sandbox Code Playgroud)


Pim*_*ger 6

如何在submit方法中进行检查:

$('#form').submit (function() {
 if(formValidated())
  return true;
 return false;
});
Run Code Online (Sandbox Code Playgroud)

  • 只是您可能已经知道的一个说明:不要忘记也在服务器端进行验证,因为禁用 javascript 将绕过这一点。 (2认同)