关于js创建元素问题。
尼古拉阿列克塞耶维奇奥斯特洛夫斯基
尼古拉阿列克塞耶维奇奥斯特洛夫斯基 2017-02-28 09:47:34
0
2
1035
<script>
arr=["ninhao","dajiahao","hi"];
var ol=document.querySelector("#ol");//alert(123)
for( var i=0; i<arr.length; i++){   
 var oli=document.createElement("li");        oli.innerHTML=arr[i];        ol.appendChild(oli);    }
</script>
<ol id="ol">
</ol>

我想把数组arr的值都出来放到有序列表中,但是一直提示不能读取appendChild,请问是什么原因呢,谢谢!

尼古拉阿列克塞耶维奇奥斯特洛夫斯基
尼古拉阿列克塞耶维奇奥斯特洛夫斯基

모든 응답(2)
数据分析师

js로 요소를 생성하는 문제에 대해. -PHP 중국어 사이트 Q&A - js로 요소를 생성할 때의 문제에 대해. -PHP 중국어 홈페이지 Q&A

꼭 보고 배워보세요.

巴扎黑

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

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

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿