Je lance la sérialisation sur un formulaire, où l’un des champs est masqué – et c’est un domaine très important, qui devrait être posté. Existe-t-il un moyen de le sérialiser facilement via jQuery ou devrais-je écrire ma propre fonction?
Serialize inclut tous input
éléments d’ input
activés avec un atsortingbut name
.
Peut-être que combiner les deux dans un seul sélecteur fonctionnerait?
$(":input,:hidden").serialize();
edit: J’ai juste essayé ce qui précède et ça a fonctionné. mais, $ (“form”). serialize (); devrait automatiquement prendre toutes les entrées comme d’autres l’ont mentionné.
Voici une variation étrange sur ce problème. Les champs cachés ont des noms.
alert($("#myForm").serialize())
Affiche correctement une fenêtre contenant tous les champs masqués. Mais
$.post('myposts.php', $("#myForm").serialize(), function(data) { $('#myResult').html(data); });
N’a pas les champs cachés. Lorsque le script php effectue print_r($_POST)
les print_r($_POST)
et les cases à cocher sont erronés
Je me suis juste heurté à ce problème et j’ai piraté une solution.
Le problème est lié à la manière dont JQuery récupère les informations HTML cachées. Il ne prendra pas le texte d’un champ caché comme valeur, vous devez utiliser la propriété value =.
Pour le définir dans JQUERY, utilisez $(field).val(yourvalue);
vous devez append un nom à tous les éléments pour que la fonction sérialisation fonctionne correctement
J’ai eu ce problème aussi. Par habitude je ferme mes champs de saisie avec />. J’ai trouvé que l’entrée cachée ne fonctionnait pas lorsqu’elle était fermée de cette manière.
ne marche pas.
fonctionne.