2011-12-14 100 views
1

我试图使用$(':input')选择器,但它不选择禁用的选项,也不选择隐藏的选项。“:输入”不选择禁用的输入

$(':input').serialize() 

尽管窗体标签包围的一切,它只是序列化一些的人,因为其他部分在其他的div这似乎打破了形式。

无论如何选择所有输入,包括隐藏和禁用的输入?

我知道我可以通过手动选择每个字段的ID来实现,但这不是IMO的最佳方法。

回答

2

问题不在于:input选择器没有针对禁用的输入,而是serialize()方法不会序列化禁用的输入。

serialize() documentation states;

注意:只有"successful controls"被串行化为字符串。

该链接继续解释, 禁用的控件无法成功。

隐藏的输入字段应该由:input选择器选择,并由serialize()方法序列化;这是JSFiddle显示的内容; http://jsfiddle.net/H2g6Q/

+0

我该如何序列化它们? – 2011-12-14 10:42:11