来自不是表单的元素的jQuery serialize/serializeArray

B Z*_*B Z 35 jquery

关于这是否可行,我还没有找到具体的答案,但似乎应该......

我想序列化div中包含的所有输入元素.我不能使用表单,因为它将嵌套在另一个表单中.然后我会得到值并通过ajax发布它们.

这是我正在玩的jsFiddle示例:

http://jsfiddle.net/9uyz5/

如果我将root更改为a它按预期工作.

谢谢你的帮助.

我从另一个问题修改了jsfiddle:

/sf/answers/83041661/

Ome*_*ari 57

您需要序列化容器内的所有输入,而不是实际的容器本身.所以:

$('div :input').serialize()
Run Code Online (Sandbox Code Playgroud)

  • 有点晚了我知道但是,'$('#myForm').serialize()`有效,因为它被设计为序列化形式**或**jQuery数组输入元素的所有元素.[如文档中所述](http://api.jquery.com/serialize/) (3认同)

tir*_*iru 8

试试这个,搞定所有.

$('#divID *').serialize()
Run Code Online (Sandbox Code Playgroud)


Gun*_*ram 6

这也适用于

$('div :input').serializeArray()
Run Code Online (Sandbox Code Playgroud)

:)