Подтвердить что ты не робот

Сериализация не включает скрытые поля

Я запускаю сериализацию в форме, где по поля скрыты - и это очень важное поле, которое должно быть опубликовано. Есть ли способ легко сериализовать его через jQuery или мне нужно написать свою собственную функцию?

4b9b3361

Ответ 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" >

работает.