setAttribute()方法并没有取代原来的值?

来源:9-6 setAttribute()方法

仢约

2016-11-15 18:35

http://www.imooc.com/code/1588

<body>

  <p id="intro">我的课程</p>  

  <ul>  

    <li title="JS">JavaScript</li>  

    <li title="JQ">JQuery</li>  

    <li title="1">HTML/CSS</li>  

    <li title="JAVA">JAVA</li>  

    <li title="1">PHP</li>  

  </ul>  

  <h4>以下为li列表title的值,当title为空时,新设置值为"WEB前端技术":</h4>

<script type="text/javascript">

  var Lists=document.getElementsByTagName("li");

  for (var i=0; i<Lists.length;i++)

  {

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

    document.write(text +"<br>");

    if(text=="1")

    {

    Lists[i].setAttribute("title","WEB前端技术")

    document.write(Lists[i].getAttribute("title")+"<br>");

    }

  }

</script>

</body>

这段代码里并没有改变title的值 ,原来的值在,后来的值也在?

写回答 关注

2回答

  • 沧海与明月
    2016-11-15 20:47:37
    已采纳

    你的if语句在document.write(text +"<br>");之后 也就是无论text是否等于1 他都会先执行document.write(text +"<br>");这句代码,你可以在if语句后加上一个else,把document.write(text +"<br>");这句放到else里去

  • 老友丶
    2016-11-15 20:02:35

    Lists[i].setAttribute("title","WEB前端技术")
    这一句就是设置啊,如果原来的title=="1",那么该节点的title设置为WEB前端技术。

    我也不知道 你是说代码有错 还是没看懂。

    仢约 回复老友丶

    共同学习,共同进步!

    2016-11-15 21:04:23

    共 3 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468196 学习 · 21891 问题

查看课程

相似问题