如何从表单中获取所有输入(input)和选择(select)的值?
问题的原因是在表格中有多个具有相同名称的输入和选择元素,导致在读取值时会覆盖之前的值。解决方法是使用唯一的id代替name或将值放入数组而不是映射中。
以下是解决方法的代码示例:
$(function(){ var data = {}; $('#dataTable input,select').each(function(){ var id= $(this).attr('id'); var val = $(this).val(); data[id]=val; }); console.log(data); });
Links | Desciption | Image | URL | |
|
感谢回答,但似乎它总是只获取最后一个值。如果多个输入具有相同的名称,则会在data映射中被覆盖。您可以使用唯一的id而不是名称,或者将值放入数组而不是映射中。请参考更新的答案使用id。