问答详情
源自:9-5 getAttribute()方法

关于getAttribute(),我下面的用法有错吗?明明是按照例子做的啊

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>getAttribute()</title>

</head>

<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>

</html>


提问者:ChrisKyle 2017-03-14 20:47

个回答

  • 呦呦慕粉
    2017-05-23 22:05:33
    已采纳

     你发的代码倒数第9行,”var text=con.getAttribute("title");“这个是错误的,应该改为 var text=con[i].getAttribute("title");”。先通过getElementsByTagName(“li”),获取所有元素节点即标签节点是“li”的数组集合,一共5个,把这个数组赋值给con。con[i].getarribute("title")的意思是从con[0]所代表的“li”标签中获得属性名称是“title”的属性内容,即"第一个li”,依次从con[0],到con[4],,所以你的倒数第9行得是“con[i].getAttribute("title");”。

  • 慕粉1131507708
    2017-10-17 10:38:06

    con在这边是定义了数组,要加[i]才能获取全部的值,嗯,还是有点小细节的嘛····

  • qq_梦与现实的距离_0
    2017-03-18 19:55:32

    var con=document.getElementsByTagName("li");相当于定义了一个关于li标签的数组

    所以  var text=con.getAttribute("title");应该改成var text=con[i].getAttribute("title");

  • 学习js
    2017-03-14 21:56:38

    var text=con[i].getAttribute("title");