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

使用setAttribute赋予了元素新的属性值之后,为什么输出新属性值还要用getAttribute,如代码所示

<!DOCTYPE HTML>

<html>

<head>

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

<title>无标题文档</title>

</head>

<body>

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

  <ul>  

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

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

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

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

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

  </ul>  

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

<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=="")

    {

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

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

//为什么不能直接输出  document.write(t+"<br>") 呢?

    }

  }

</script>

</body>

</html>


正在回答

3 回答

  1. setAttribute()方法没有返回值。

  2. 抛开返回值不说,你把t的右边带入到下面去,document.write(t+"<br>")--->document.write(Lists[i].setAttribute("title","WEB前端技术")+"<br>")跟document.write(Lists[i].getAttribute("title")+"<br>")显然也是2回事

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

慕UI1237056 提问者

非常感谢!
2016-05-09 回复 有任何疑惑可以回复我~

你是要显示li里面title的值的,肯定要get一个title属性啦,才能得到它的值,不然怎么得到,,,,set是设置一下title的值,,,

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

get是得到,set是赋予,如果要得到返回值,肯定只能通过得到函数啊。。个人理解。。。

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

小朱1

函数怎么得到返回值 亲 if(text=="") { function aa(){ var t= Lists[i].setAttribute("title","WEB前端技术") return t } document.write(aa()+"<br>"); }
2016-11-30 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

使用setAttribute赋予了元素新的属性值之后,为什么输出新属性值还要用getAttribute,如代码所示

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