Je lance serialize sur un formulaire, où l'un des champs est caché - et c'est un champ très important, qui doit être publié. Existe-t-il un moyen de le sérialiser facilement via jQuery ou dois-je écrire ma propre fonction?
Sérialiser le fait inclut tous les éléments input
activés avec un attribut name
.
Peut-être que combiner les deux dans un seul sélecteur fonctionnerait?
$(":input,:hidden").serialize();
edit: je viens d'essayer ce qui précède et cela a fonctionné. mais, $ ("form"). serialize (); devrait automatiquement prendre toutes les entrées comme d'autres l'ont mentionné.
Je suis juste tombé sur ce problème moi-même et j'ai trouvé une solution.
Le problème est lié à la façon dont JQuery récupère les informations html cachées. Il ne récupérera 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);
Voici une variation étrange sur ce problème. Les champs cachés ont des noms.
alert($("#myForm").serialize())
Ouvre correctement une fenêtre avec tous les champs cachés. Mais
$.post('myposts.php', $("#myForm").serialize(), function(data) {
$('#myResult').html(data);
});
N'a pas les champs cachés. Lorsque le script php fait print_r($_POST)
le caché et les cases à cocher sont mising
vous devez ajouter un nom à tous les éléments pour que la fonction de sérialisation fonctionne correctement