今天在某课网上复习js,突然卡在一个小例子上。反复做了几遍就是报错。终于查询w3c才找到错误的源头。
这里记录一下,谨防以后又忘了。
错误码:
<body> <p id="intro">课程列表</p> <ul> <li title="第1个li">HTML</li> <li>CSS</li> <li title="第3个li">JavaScript</li> <li title="第4个li">Jquery</li> <li>Html5</li> </ul> <p>以下为获取的不为空的li标签title值:</p> <script type="text/javascript"> var con=document.getElementsByTagName("li"); for (var i=0; i< con.length;i++){ var text = con.getAttribute("title"); if(text!=null) { document.write(text+"<br>"); } } </script> </body>
正确码:
<body> <p id="intro">课程列表</p> <ul> <li title="第1个li">HTML</li> <li>CSS</li> <li title="第3个li">JavaScript</li> <li title="第4个li">Jquery</li> <li>Html5</li> </ul> <p>以下为获取的不为空的li标签title值:</p> <script type="text/javascript"> var con=document.getElementsByTagName("li"); for (var i=0; i< con.length;i++){ var text = con[i].getAttribute("title"); if(text!=null) { document.write(text+"<br>"); } } </script>
注意使用getAttribute()方法时,获取的标签元素必须标记下标。getAttribute()把元素看做一个数组。若不写下标getAttribute()报错。