Я запускаю сериализацию в форме, где по поля скрыты - и это очень важное поле, которое должно быть опубликовано. Есть ли способ легко сериализовать его через jQuery или мне нужно написать свою собственную функцию?
Сериализация не включает скрытые поля
Ответ 1
Serialize включает все включенные элементы input
с атрибутом name
.
Ответ 2
Может быть, объединение двух в один селектор будет работать?
$(":input,:hidden").serialize();
edit: Я просто попробовал выше, и это сработало. но, $( "форма" ). serialize(); должен автоматически принимать все входы, как указывали другие.
Ответ 3
Здесь странная вариация этой проблемы. У скрытых полей есть имена.
alert($("#myForm").serialize())
Правильно всплывает окно со всеми скрытыми полями. Но
$.post('myposts.php', $("#myForm").serialize(), function(data) {
$('#myResult').html(data);
});
Не имеет скрытых полей. Когда php script делает print_r($_POST)
скрытые и флажки mising
Ответ 4
Просто столкнулся с этой проблемой и взломал решение.
Проблема связана с тем, как JQuery берет скрытую информацию html. Он не будет отображать ТЕКСТ скрытого поля в качестве его значения, вы должны использовать свойство value =.
Чтобы установить его в JQUERY, используйте $(field).val(yourvalue);
Ответ 5
вы должны добавить имя для всех элементов для правильной работы функции сериализации
Ответ 6
У меня тоже была эта проблема. По привычке я закрываю поля ввода с помощью /" > . Я обнаружил, что скрытый ввод не работает, когда закрывается таким образом.
<input type="hidden" name="someName" value="someValue" />
не работает.
<input type="hidden" name="someName" value="someValue" >
работает.