【发布时间】:2014-06-12 14:48:30
【问题描述】:
我正在尝试填充一个 json 数组以通过 ajax 发送到服务器。但是,它不起作用,我不确定为什么。代码如下:
var form = $('.dash-name-form');
form.serializeArray();
input = [];
$.each(form[0], function(){
input.push({
this.name : this.value
});
});
console.log(JSON.stringify(input));
当我执行以下操作时它会起作用:
$.each(form[0], function(){
input.push({
'name' : this.name,
'value': this.value
});
});
但我真的很喜欢第一个块的更简化的输出,以便更好地与我正在使用的后端框架一起工作(laravel 的 Input::json()->all() 不适用于第二个)。
非常感谢所有建议。谢谢大家。
【问题讨论】:
-
您是否知道
serializeArray调用在那里什么都不做? -
为
serializeArray()返回的数组设置一个值,`var formData = form.serializeArray();跳过将数据推送到单独的数组,除非您需要过滤或处理数据。
标签: jquery arrays json push each