场景:n条数据,循环添加到表格中,表格一行有4列,当n/4有余数的时候,余数的几条数据怎么能继续添加在表格里,例如最后一行写有2条数据,剩下2个表格显示空白
写这行代码的时候发现这个问题,大佬帮忙解决下
for (var i = 0; i < Data.retbody.length; i = i + 4) {
$("#info1").append(
"
我这样写,最后一行的数据如果不能满足1行4列,最后一行数据丢失,js报错提示未定义
这么做肯定是未定义的,你需要判断当前i的值是否在Data.retbody.length范围之内,你这个明显是超出了数组的长度,怎么能够获得值呢?都数组下标越界了,要么就多做几重循环,分别判断i,i+1,i+2,i+3是否在范围之内,在范围之内才允许继续
var length = Data.retbody.length;
for (var i = 0; i < length; i = i + 4) {
if(i+3 $("#info1").append(
""
+ "" + Data.retbody[i].ksmc00 + ""
+ "" + Data.retbody[i + 1].ksmc00 + ""
+ "" + Data.retbody[i + 2].ksmc00 + ""
+ "" + Data.retbody[i + 3].ksmc00 + ""
+ "");
}
else if(i+2 $("#info1").append(
""
+ "" + Data.retbody[i].ksmc00 + ""
+ "" + Data.retbody[i + 1].ksmc00 + ""
+ "" + Data.retbody[i + 2].ksmc00 + ""
+ "");
}
else if(i+1 $("#info1").append(
""
+ "" + Data.retbody[i].ksmc00 + ""
+ "" + Data.retbody[i + 1].ksmc00 + ""
+ "");
}
else if(i $("#info1").append(
""
+ "" + Data.retbody[i].ksmc00 + ""
+ "");
}
}