Pouvez-vous sérialiser plusieurs formulaires en un seul afin qu'une seule demande de publication ou ajax soit effectuée? J'ai cherché autour et c'est tout pour soumettre chaque formulaire séparément via post/ajax.
Lorsque vous utilisez la fonction jQuery serialize()
, elle transforme simplement votre formulaire en une chaîne au format a=1&b=2&c=3
. Vous pouvez donc certainement appliquer cette fonction à deux formulaires et concaténer le résultat, avec un &
entre eux, et utilisez le résultat dans votre appel ajax. Vous voudriez quelques vérifications pour vous assurer qu'aucune chaîne n'est vide lorsque vous effectuez la concaténation.
Si vous exécutez $('form').serialize()
sur une page avec plusieurs formulaires, il sérialisera correctement tous les formulaires en une seule chaîne.
Pour inclure uniquement certains formulaires, utilisez $('#form1, #form2').serialize()
J'aime la réponse de Jleagle ci-dessus.
si vous êtes plus précis sur les formulaires, utilisez
$('#detailsform,#levelForm').serialize();
la ligne ci-dessus renverra une valeur de chaîne. comme customId=08071992&cort=01&empId=7777
vous pouvez éviter les champs indésirables en ajoutant l'attribut disabled="disabled"
aux champs de saisie ou en d'autres termes les champs "désactivés" ne seront pas sérialisés.