2013-04-01 71 views
0

我想防止表单在更改选择框后提交两次。我尝试使用e.preventDefault(),但它没有区别。jQuery防止默认,表单提交两次

 $(document).ready(function() { 
      $(document).on("change","#select1", function(e){ 
       e.preventDefault(); 
       $("#form1").submit(); 
      }); 

     }); 

回答

1

形式将不会与该代码提交两次,但它一点儿也不阻止的形式从提交或者,它只是防止了选择的变化情况,因为这是你要绑定的元素和事件至。

+0

但是可以把它比两次提交表单?点击提交按钮不会触发两次提交。 – user2182429

0

这样的事情?

$(document).ready(function() 
{ 
    var changed = 0; 
    $(document).on("change","#select1", function(e) 
    { 
     changed++; 
     if(changed > 1) 
      return false; 

     $("#form1").submit(); 
    }); 

}); 
+0

谢谢你,那有效!但之后,我不能再改变它.. – user2182429

0

您需要preventDefault对表单的提交事件:

$('form').live('submit', function (e) { 
    e.preventDefault(); 
}); 
+0

我试过了,但它也没有区别(?) – user2182429