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