2012-01-05 3 views
0

J'utilise un modal simple pour afficher une div avec des champs de formulaire. Le formulaire ne doit pas être soumis dans le modal. Lorsque le modal est fermé, cependant, les valeurs pour les champs sont perdues. Quel est un bon moyen de conserver les valeurs qui ont été entrées dans les champs après la fermeture de la fenêtre modale?Comment enregistrer des valeurs de formulaire dans une fenêtre modale

Je pense à mettre un bouton «Terminé» sur le modal qui va prendre ces valeurs et faire quelque chose avec eux, mais je ne suis pas sûr quelle est la meilleure façon d'aborder ce problème en termes de faire ces valeurs persister après la fermeture du modal. Donc, en gros, l'utilisateur ferme le modal et peut ensuite soumettre le formulaire s'il le souhaite, et les valeurs du modal seront affichées.

+0

Eh bien, la première étape serait de déterminer ce que vous voulez que les valeurs de le faire. Un formulaire sans bouton de soumission ne fait rien. Vous pouvez lire les valeurs via jquery avec '$ (input) .attr ('value');' et les stocker dans un tableau ... mais dans quel but? – Scott

Répondre

0

Si, lorsque la fenêtre modale est fermée, elle renvoie vers le serveur, les contrôles d'entrée html ne conservent pas les valeurs après la publication. Peut-être que vous pouvez mettre en œuvre un VIEWSTATE ou similaire pour ces contrôles afin qu'ils puissent le faire.

Si vous avez montré du code, comme votre configuration de fenêtre modale, je pourrais essayer de mettre du code.

0

Vous pouvez utiliser $('form').serialize() et enregistrer les valeurs de formulaire sérialisé dans une variable lorsque la fenêtre modale est fermée.

Vous pouvez également utiliser .serializeArray() si vous avez besoin d'un tableau plus digeste de valeurs de formulaire.

En d'autres termes, le joindre à un événement proche de votre modal (pseudo-code avant):

var formValues; 
Modal.onclose(function() { 
    formValues = $('#modalform').serialize(); 
    // "do" something with formValues 
}); 
Questions connexes