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

Сериализовать несколько форм вместе?

Можно ли сериализовать несколько форм в одном, чтобы был создан только один пост или ajax-запрос? Я искал вокруг, и это все для отправки каждой формы отдельно через post/ajax.

4b9b3361

Ответ 1

Когда вы используете функцию jQuery serialize(), она просто превращает вашу форму в строку в формате a=1&b=2&c=3. Поэтому вы можете применить эту функцию к двум формам и объединить результат с помощью & между ними и использовать результат в своем вызове ajax. Вам понадобятся некоторые проверки, чтобы ни одна строка не была пуста, когда вы выполняете конкатенацию.

Ответ 2

Если вы запустите $('form').serialize() на странице с несколькими формами, она будет правильно сериализовать все формы в одну строку.

Чтобы включить только определенные формы, используйте $('#form1, #form2').serialize()

Ответ 3

Мне нравится ответ от Jleagle выше.

если вы более конкретно о формах, используйте

$('#detailsform,#levelForm').serialize();

вышеприведенная строка вернет строковое значение. как customId=08071992&cort=01&empId=7777

Вы можете избежать нежелательных полей, добавив атрибут disabled="disabled" к полям ввода, иначе говоря, "отключенные" поля не будут сериализованы.