目标需求,从页面获取input输入框数量,生成多个对象的JSON数组
由于输入框对象是动态增加的,每个新增的输入框都需要是一个新对象,然后对数组进行拼接,动态生成不同名字的数组让我百思不得其解,网上一顿搜索没有任何想法,直到看到了eval方法。代码如下
let m = 1;
arr.push(map0);
for (; id > 1; id--) {
var map = eval('"map"+m');
map = new Object();
var str = '#table' + m + ' tr';
$(str).each(function (i) { //--循环所有的行
var inputKey11 = $(this).find("td:eq(0) input").val();
var inputValue11 = $(this).find("td:eq(1) input").val();
if (inputKey11 != null && inputValue11 != null) {
let key1 = inputKey11;
map[key1] = inputValue11;
}
});
m = ++m;
arr.push(map);
}
id = bo;
let b = JSON.stringify(arr);
$(str)取得表格id,可以完美不断生成tablem对象。有需要的欢迎留言