2010-09-20 9 views
40

Comment puis-je soumettre un formulaire spécifique en utilisant le code suivant (par exemple l'ID de mon formulaire est # form1).Jquery soumettre formulaire

$(".nextbutton").click(function() { submit; }); 

Répondre

60

Essayez cette permet de dire votre identifiant formulaire est formID

$(".nextbutton").click(function() { $("form#formID").submit(); }); 
+21

Est-ce que "form # formID" n'est pas un peu redondant? "#formID" serait suffisant, non? –

+18

Oui, seul l'ID suffirait. Mais le préfixer avec la variable accélère la recherche de l'élément. Si vous l'ajoutez, seul l'élément

sera évalué jusqu'à ce que l'ID correct soit trouvé. Certes, la plupart des pages Web n'ont pas beaucoup de HTML pour avoir un retard dans la recherche, mais il est toujours préférable de préfixer la variable si vous la connaissez. – Flater

+0

selon la documentation ici http://api.jquery.com/submit/ cela ajoutera un écouteur de soumission sur le formulaire, pas réellement le soumettre. La fonction submit n'est pas la même sur un objet jQuery et sur un élément DOM. – challet

2

Vous avez vraiment pas besoin de faire tout cela dans jQuery pour le faire en douceur. Faites-le comme ceci:

$(".nextbutton").click(function() { 
    document.forms["form1"].submit(); 
}); 
+58

drôle, parce que vous utilisez jquery dans votre réponse qui dit que vous n'avez pas besoin de jquery? – Claudiu

+8

Je suppose qu'il voulait dire la partie de la soumission du formulaire :) – msanjay

+1

.submit() ne fonctionne pas pour moi. dit que la propriété submit n'est pas une fonction – kommradHomer

1

Si vous avez seulement 1 formulaire dans votre page, utilisez ceci. Vous n'avez pas besoin de connaître l'identifiant ou le nom du formulaire. Je viens d'utiliser ce code - travail:

document.forms[0].submit(); 
7

Vous pouvez essayer comme:

$("#myformid").submit(function(){ 
     //perform anythng 
    }); 

Ou encore, vous pouvez essayer comme

$(".nextbutton").click(function() { 
    $('#form1').submit(); 
}); 
+2

selon http://api.jquery.com/submit/, ceci ajoutera seulement un écouteur d'événement – challet

+0

@challet: Selon un exemple plus bas dans la page que vous avez liée à, il soumet le formulaire. – Stefan

+0

oui vous avez raison – challet

2

Depuis un objet jQuery hérite d'un tableau et ce tableau contient les éléments DOM sélectionnés. Dire que vous utilisez un identifiant et donc l'élément doit être unique dans les DOM, vous pouvez effectuer un appel direct à soumettre en faisant:

$(".nextbutton").click(function() { 
    $("#formID")[0].submit(); 
}); 
0

Essayez ceci:

$('#form1').submit(); 

ou

document.form1.submit(); 
1

Utilisez la requête suivante pour soumettre une zone de sélection sans le bouton Envoyer. Utilisez "changer" au lieu de cliquer comme indiqué ci-dessus.

$("selectbox").change(function() { 
    document.forms["form"].submit(); 
}); 

Cheers!

Questions connexes