见下面我用的代码。
var len1=document.getElementById(div_name);
alert(len1.length);
为firebug中的len1数组填充值。但是当我试图获得len1.length的长度时,我认为它是未定义的。
与我分享您的建议 谢谢!
答案 0 :(得分:0)
文档元素不是数组。你在Firebug中看到的东西是一个对象。
与jQuery的$()
方法不同,getElementById()
将返回单个对象,如果未找到匹配则返回null
。
如果你想知道你是否匹配任何东西:
var len1 = document.getElementById(div_name);
if (len1 === null)
{
alert('oops');
}
答案 1 :(得分:0)
为什么你决定document.getElementById
返回带有length属性的数组?它不返回任何数组,它返回没有此属性的element
。这就是你undefined
的原因。
答案 2 :(得分:0)
getElementById()
返回单个DOM元素,而不是数组,并且该元素没有length
属性(这就是为什么你看到undefined
)。如果您尝试使用该ID获取多个元素,那么这是一种错误的方法,因为在有效代码中只能存在一个具有给定ID的元素(并且没有getElementsById()
)。