(www.ca88.com) 关于js创建元素问题。

(www.ca88.com)

<script>
arr=["ninhao","dajiahao","hi"];
var ol=document.querySelector"#ol";
//alert123
for var i=0; i<arr.length; i++{ var oli=document.createElement"li"; oli.innerHTML=arr[i]; ol.appendChildoli; } </script>
<ol id="ol"> </ol> 我想把数组arr的值都出来放到有序列表中,但是一直提示不能读取appendChild,请问是什么原因呢,谢谢!

  • 2月27日提问
  • 评论
  • 邀请回答
  • 编辑

浏览器就会按顺序先运行<script>中的js脚本,然后读取<ol>内容渲染页面,也就是说js执行的时候页面上还不存在ol元素。解决办法是把<script>放在<ol>后面,或者使用window.onload

<script>
window.onload = function { arr=["ninhao","dajiahao","hi"]; var ol=document.querySelector"#ol"; //alert123 for var i=0; i<arr.length; i++{ var oli=document.createElement"li"; oli.innerHTML=arr[i]; ol.appendChildoli; }
}
</script>
<ol id="ol">
</ol>

  • 2月28日回答 · 2月28日更新
  • 评论
  • 编辑

script标签连带其内容,放到ol标签的后面

  • 2月27日回答
  • 评论
  • 编辑

发表评论

电子邮件地址不会被公开。 必填项已用*标注