关于这是否可行,我还没有找到具体的答案,但似乎应该是......
我想序列化div中包含的所有输入元素。我不能使用表单,因为它将嵌套在另一个表单中。然后我会获取值并通过ajax发布它们。
这是我正在玩的jsFiddle示例:
如果我将root更改为a,它按预期工作。
感谢您的帮助。
我从另一个问题修改了jsfiddle:
答案 0 :(得分:55)
您需要序列化容器内的所有输入,而不是实际的容器本身。这样:
$('div :input').serialize()
答案 1 :(得分:8)
试试这个,以获得所有。
$('#divID *').serialize()
答案 2 :(得分:4)
这也适用于
$('div :input').serializeArray()
:)
答案 3 :(得分:3)
为了使用按钮序列化div的内容,这将是更有效的方式,因为它不会遍历整个dom。
$(this).closest('div').find("input,select").serialize();
请务必将此附加到按钮事件中,并确保在按钮中包含event.preventdefault,以便在div位于其中时不提交主表单。