<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> <script> window.onload = function () { alert(document.getElementById('div1').getElementsByTagName['ul'][0].getElementsByTagName['li'].length); } </script></head><body> <div id="div1"> <ul> <li>nihao</li> <li>js</li> <li>hello</li> <li>html5</li> </ul> </div></body></html>js中为什么无法执行?
3 回答
已采纳
stone310
TA贡献361条经验 获得超191个赞
alert(document.getElementById('div1').getElementsByTagName['ul'][0].getElementsByTagName['li'].length);
用圆括号
qq_薯条配可乐_03787165
TA贡献1条经验 获得超0个赞
alert(document.getElementById('div1').getElementsByTagName('ul')[0].getElementsByTagName('li').length);
chwech
TA贡献63条经验 获得超18个赞
getElementsByTagName() getElementById() getElementsByName()
等等都是document对象的方法
document.getElementById('div1').getElementsByTagName['ul'][0].getElementsByTagName['li'].length
不能像你这样调用,我猜你是想弹li元素的个数,可以这样写
alert(document.getElementsByTagName("li").length); //4
------------------------------------
以上原答案。
上面的答案是错误的。
getElementsByTagName() getElementById() getElementsByName()
都可以由具体对象调用,不仅仅document
真正错误所在是兄弟代码中
document.getElementById('div1').getElementsByTagName['ul'][0].getElementsByTagName['li'].length
方法后面的( )错写成[ ]导致错误,改成
document.getElementById('div1').getElementsByTagName('ul')[0].getElementsByTagName('li').length
就好了
添加回答
举报
0/150
提交
取消