【发布时间】:2016-03-31 23:21:17
【问题描述】:
$('#create').click(function(){
var metaObj = {};
var dataObj = {};
var fields = [];
$('#tableform').find(".meta").each(function(){
metaObj[this.name] = this.value;
});
$('.datarow').each(function () {
$('td > input, select',this).each(function () {
dataObj[this.name] = this.value;
});
console.log(dataObj);
fields.push(dataObj);
});
console.log(JSON.stringify(metaObj));
console.log(JSON.stringify(fields));
});
我在表格中有一个表格。每行都有相同的输入字段。 datarow 是每一行的类名。我遍历每一行以获取值。
console.log(dataObj); 显示输入的每一行。但是,字段数组仅添加了“n”次的最后一个对象。 n = 行数。
【问题讨论】:
-
将
var dataObj = {};放入each()代码块。您还可以使用map()和serializeArray()使您的代码更简单,但我们需要查看您的HTML 来向您展示如何操作。 -
哦.. 伙计.. 你节省了我的时间。我试着把 var fields = [];每个里面。但是,var dataObj = {};在 each() 中,刚刚工作
-
很高兴为您提供帮助。我将其添加为您的答案。
-
谢谢,我会接受的
标签: jquery arrays json forms html-table