2010-12-15 74 views
1

Dans ma validation jQuery "submitHandler", je renommer certains champs pour qu'ils aient le même nom (ceci est requis par le serveur qui gère le formulaire) avant d'appeler form.submit(). Cela fonctionne lorsque je clique sur le bouton "soumettre" - je vois les noms de paramètres corrects qui sont envoyés au serveur (en utilisant wireshark). Si toutefois le formulaire est soumis à la suite d'un gestionnaire de changement, les champs semblent être renommés lorsque je passe le code dans le débogueur - mais les paramètres envoyés au serveur indiquent les noms de champs d'origine au lieu des valeurs renommées.Soumission de formulaire HTML utilisant des noms de champs erronés lors de l'appel du gestionnaire onChange

au sujet de mon gestionnaire de changement Il n'y a rien de spécial ...

$(document).ready(function() { 
    $('.autoSubmitField').bind('change', function() { 
     $(this).closest("form").submit(); 
    }); 
}); 

Toute idée de ce que je fais mal? Pourquoi une soumission de formulaire régulière (via le bouton "Soumettre") honore-t-elle le changement de nom .. mais pas une soumission de formulaire via mon gestionnaire onChange?

À la votre!

+0

Et comment joignez-vous l'événement qui change les noms des champs? – epascarello

Répondre

0

Il semble que le plugin jQuery n'utilise pas le gestionnaire onsubmit, mais ajoute onclick au bouton submit. Jolie conception merdique si c'est le cas. Au lieu d'appeler soumettre, appelez cliquez sur votre bouton de soumission.

$("#submitButtonId").click(); 
+0

Merci, ça a marché! – IrishGuy