我使用以下内容填充了serializeArray()
个数据:
var compArr = $(':input[name="cc_text"]').serializeArray();
console.log(compArr)
看起来像这样:
0:{name: "cc_text", value: "spring 2016;"}
1:{name: "cc_text", value: "fall 2016;"}
我需要分别在每个索引中添加一个新条目,例如code: "B007"
和code: "J007"
,以便新数组看起来像:
0:{name: "cc_text", value: "spring 2016;", code: "B007"}
1:{name: "cc_text", value: "fall 2016;", code: "J007"}
目前,我的for循环看起来像这样:
for(var j = 0; j < countVar; j++)
{
compArr.push({code: $('#label_text_'+j).text()})
}
我得到的结果如下:
0:{name: "cc_text", value: "spring 2016;"}
1:{name: "cc_text", value: "fall 2016;"}
2:{code: "B007"}
2:{code: "J007"}
当我尝试在循环内做这样的事情时:
compArr[j].push({code: $('#label_text_'+j).text()})
我收到错误compArr[j].push
没有推送功能。
有没有办法实现这一点而无需重新创建新数组并重新插入所有数据,可能只需修改我填充初始serializeArray()
答案 0 :(得分:1)
您正在尝试添加到对象,而不是推送到数组。试试这个:
compArr[j].code = $('#label_text_'+j).text();
答案 1 :(得分:1)
您的compArr包含对象。看起来您想要添加一个代码&#39;每个对象的属性。为此,循环执行compArr并将适当的代码添加到每个对象。
DType
上面的示例假设您有包含代码值的#label_text_0和#label_text_1元素。