版权声明:需要转载的话,请先联系我哦! https://blog.csdn.net/wwt20180911/article/details/83178246
原因:对象是同一个对象,动态创建对象时,不断对对象赋值,push进数组,数组[obj,obj,obj],所有的obj值相同,因而导致数组中都是同一个对象 talk is cheap,show you the code
错误写法:
//处理个人基本情况信息
var family = $("#familyList").find("tr");
var familyList=[];
for (var i=0;i<family.length;i++) {
var tdArr = family.eq(i).find("td");//
var name = tdArr.eq(0).find('input').val();//姓名
var relationship = tdArr.eq(1).find('input').val();//与本人关系
var workOrganization = tdArr.eq(2).find('input').val();//工作单位及职务
var tel = tdArr.eq(3).find('input').val();//联系电话
if(tel){
if(!(/^1[3456789]\d{9}$/.test(tel))){
alert("家庭信息手机号码有误,请重填~")
return false
}
}
var address = tdArr.eq(4).find('input').val();//联系地址
var obj = {
name: name,
relationship: relationship,
workOrganization: workOrganization,
tel:tel,
address:address,
};
}
familyList.push(obj);
console.log(familyList)
正确写法
//处理个人基本情况信息
var family = $("#familyList").find("tr");
var familyList=[];
for (var i=0;i<family.length;i++) {
var tdArr = family.eq(i).find("td");//
var name = tdArr.eq(0).find('input').val();//姓名
var relationship = tdArr.eq(1).find('input').val();//与本人关系
var workOrganization = tdArr.eq(2).find('input').val();//工作单位及职务
var tel = tdArr.eq(3).find('input').val();//联系电话
if(tel){
if(!(/^1[3456789]\d{9}$/.test(tel))){
alert("家庭信息手机号码有误,请重填~")
return false
}
}
var address = tdArr.eq(4).find('input').val();//联系地址
var obj = {
name: name,
relationship: relationship,
workOrganization: workOrganization,
tel:tel,
address:address,
};
familyList.push(obj);
}
console.log(familyList)
作者:涛兄
来源:CSDN
原文:https://blog.csdn.net/wwt20180911/article/details/83178246
版权声明:本文为博主原创文章,转载请附上博文链接!