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

JQuery serialize/serializeArray из элемента, который не является формой

Я не нашел конкретного ответа относительно того, возможно ли это, но похоже, что это должно быть...

Я хотел бы сериализовать все входные элементы, содержащиеся в div. Я не могу использовать форму, потому что она будет вложена в другую форму. Затем я получал значения и отправлял их через ajax.

Вот пример jsFiddle, с которым я играю:

http://jsfiddle.net/9uyz5/

Если я изменил корень на a, он работает как ожидалось.

Спасибо за вашу помощь.

Я изменил jsfiddle из этого другого вопроса:

qaru.site/info/847/...

4b9b3361

Ответ 1

вам нужно сериализовать все входы внутри вашего контейнера, а не сам контейнер. так:

$('div :input').serialize()

Ответ 2

Попробуйте это, чтобы получить все.

$('#divID *').serialize()

Ответ 3

это также работает с

$('div :input').serializeArray()

:)

Ответ 4

Для сериализации содержимого div с помощью кнопки это будет более эффективным способом, так как он не пройдет через весь dom.

$(this).closest('div').find("input,select").serialize();

обязательно присоедините это с событием кнопки и не забудьте включить event.preventdefault с кнопкой, чтобы она не отправляла первичный формы, если div внутри него.