为了账号安全,请及时绑定邮箱和手机立即绑定

麻烦大神帮我看看为什么使用getAttribute()方法还是不能将li标签里的title值取出来

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


正在回答

5 回答

问题出在这一行代码:var text=con.getAttribute("title");

前面通过 var con=document.getElementsByTagName("li"); 获取到的con是一个数组,里面有3个li元素。而getAttribute方法操作的对象是数组中的某个元素,而不是con数组本身,改成con[i].getAttribute就好了。

0 回复 有任何疑惑可以回复我~

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

你少了一个二维数组con[i]


0 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~

document.getElementsByTagName获取的是数组元素,当将其值存储在变量con中后,想再用变量con时必须加索引[i],(注意:ID获取的是一个元素;Name和TagName获取的是一组元素,即数组元素)。

1 回复 有任何疑惑可以回复我~
for (var i=0; i< con.length; i++) {
    var text=con[i].getAttribute("title");
    if (text !== "") {
        document.write(text + "<br>");
    }
}


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

麻烦大神帮我看看为什么使用getAttribute()方法还是不能将li标签里的title值取出来

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信