for (i = 0; i < count; i++) {
var item = list.childNodes[i]._value;
var RecID = item.RecID;
var zerocount = 5 - RecID.length;
var PicZeros = "";
for (k = 0; k < zerocount; k++)
PicZeros += "0";
var url = "/p_" + PicZeros + RecID + "_01.jpg";
}
我收到此错误:
TypeError: Cannot read property 'length' of undefined
我不明白如何修复它?
答案 0 :(得分:2)
嗯,在某些时候,list.childNodes[i]._value.RecID
给你一个未定义的值。
这是问题的根本原因,您需要修复它。
也许count
是错误的,也许你已经严重填充了这个列表,我们无法从给出的代码中得知。
而且,顺便说一下,我几乎可以肯定,有更好的方法可以使用
0
个字符来填充字符串而不是循环。类似的东西:
var url = "/p_" + "00000".substring(RecID.length) + RecID + "_01.jpg";
会更好。
答案 1 :(得分:0)
试试这个
for (i = 0; i < count; i++) {
var item = list.childNodes[i]._value;
var RecID = item.RecID;
if (RecID){
var zerocount = 5 - RecID.length;
var PicZeros = "";
for (k = 0; k < zerocount; k++)
PicZeros += "0";
var url = "/p_" + PicZeros + RecID + "_01.jpg";
}
}
答案 2 :(得分:0)
试
`item.getAttribute('RECID')`
OR
在<script>
<body>
标记
喜欢
<html>
<body>
</body>
<script>
</script>
</html>