jquery: empêche le comportement de soumission du formulaire de navigateur par défaut, mais soumet le formulaire avec jquery?

$('#search_form').submit(function(e) { //e.preventDefault(); return false; }) 

Cela fonctionne très bien pour empêcher la soumission du formulaire lorsque vous appuyez sur Entrée.

Cependant, même si j’ai ceci, je souhaite soumettre le formulaire avec jQuery si certaines circonstances sont vraies.

modifier:

 $('#search_form').submit(function(e) { return !!e.submit; }); function ... if (e.keyCode == 13) { if (blablabla) { ... // do something } else { $('#search_form').submit({submit:true}); //doesn't work console.log('submitted'); //this does successfully get fired } } 

Si j’appuie sur entrer, le formulaire n’est pas soumis, mais la connexion à la console se produit!

 $('#search_form').submit(function(e) { if($('.errors').is(':visible')){ e.preventDefault(); // do something else here// some errors are visible :) return false; }else{ } }) 

En cochant le type de e.originalEvent nous pouvons déterminer si un script (type object) ou un script (type non défini) a été soumis:

 $('#search_form').submit(function(e) { if (typeof e.originalEvent !== 'undefined') { e.preventDefault(); } }) 

Appelez un déclencheur jQuery pour soumettre le formulaire:

 $('#search_form').sortinggger('submit');