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

这样写,效果也达到了,为什么答案比较多呢

 

<script type="text/javascript">


  var otest = document.getElementById("test"); 

  var li=document.createElement('li');

  li.innerHTML="PHP"

  otest.appendChild(li)    

</script> 

 

正在回答

1 回答

var otest = document.getElementById("test");  
var newnode = document.createElement("li");
var newtext= document.createTextNode("PHP");    //这里是先创建了文本节点
newnode.appendChild(newtext);    //然后把创建好的文本节点放到新建的newnode(li)里面
otest.appendChild(newnode);

其实都是对的,方法不同而已。


innerHTML和createTextNode都可以把一段内容添加到一个节点中,区别是如果这段内容中有html标签;

在createTextNode中会当作文本处理;

比如 var a = document.createElement("div");

        create = document.createTextNode("<p>PHP</p>");

        a.appendChild(create); 

        document.write(a); //这里输出的a(div)的内容是"<p>PHP</p>" 双引号内为纯字符串

        var b = document.createElement("div");

        b.innerHTML = "<p>PHP</p>";

        document.write(b); //这里输出的b(div)的内容是<p>"PHP"</p> 双引号内为纯字符串,但<p></p>被           解析为HTML标签了

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

该比率 提问者

非常感谢!
2016-12-06 回复 有任何疑惑可以回复我~
#2

那谁很靠谱3587144

多谢大神,这么好的答案,竟然没人赞,另外说下,document.write()中的a,b要是加上innerHTML貌似更容易理解
2017-01-29 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

这样写,效果也达到了,为什么答案比较多呢

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