我正在建立一个网站,我需要向php文件提交多个值。 因为我可以使用$('input')选择输入并使用ajax调用submit我没有创建表单元素。
我有一个函数,我想要提取所有输入值并将结果作为数组
我尝试调用$('input').serialize();
并将结果设置为$values
,但它没有返回数组,而且我的某些值丢失了(比如select标签中的值)
从不属于任何表单元素的所有输入字段中获取数组的最佳方法是什么?
答案 0 :(得分:3)
首先,遗漏select
代码的原因是您需要使用以下选择器:
$('input, select')
其次使用.serializeArray()
作为
$('input, select').serializeArray();
第三,您需要为元素提供name
属性。见http://jsfiddle.net/pratik136/YV4Xe/
编辑:
一般来说,选择输入字段的更好方法是使用@elclanrs建议的:input
选择器
$(':input').serializeArray();
答案 1 :(得分:0)
您使用的选择器inputs
不是有效的HTML标记。您必须手动列出要序列化的每种输入类型。
$('input, select, textarea').serialize();