使用submitHandler禁用提交按钮

我试图停止多次单击提交按钮并多次将相同的项目上传到MySQL。

因为validation不起作用,我根本无法按下按钮提交按钮。 这意味着我无法测试代码。

我也在这里运行相关的post,为您提供更多信息。

到目前为止,我使用jQueryvalidation:

$("#UploadForm").validate({ errorLabelContainer: "#messageBox", wrapper: "td", rules: { auction_description: { required: true }, auction_int_postage_type: { required: true }, listing_type: { required: true } } //all your options here submitHandler:function(form){ $('#submit').attr('disabled','disabled'); } }); 

HTML

  

这是一个小提琴 ,有一个解决你的问题的工作演示。

jQuery 1.6+

要更改disabled属性,应使用.prop()函数。

 $("#submit").prop('disabled', true); $("#submit").prop('disabled', false); 

jQuery 1.5及以下版本

.prop()函数不存在,但.attr()作用类似:

设置disabled属性。

 $("#submit").attr('disabled','disabled'); 

再次启用

 $("#submit").removeAttr('disabled'); 

在任何版本的jQuery中

你总是可以依赖实际的DOM对象,如果你只处理一个元素,它可能比其他两个选项快一点:

 // assuming an event handler thus 'this' this.disabled = true; 

使用.prop().attr()方法的优点是可以为一堆选定项设置属性。