cyoeki 2016-09-16 03:48 采纳率: 100%
浏览 1445

JS运行时出错,提示appendChild为空

 <body>
    <h1>省市联动</h1>
    <h3 id="h3"></h3>
    <select name="province" id="p">
        <option>===请选择省份===</option>
    </select>
    <select name="city" id="c">
        <option>===请选择市===</option>
    </select>
</body>
<script type="text/javascript" src="<c:url value='//ajax-lib/ajaxutils.js'/>"></script>
<script type="text/javascript">
      window.onload = function(){
          var xmlHttp = createXMLHttpRequest();
          xmlHttp.open("GET","<c:url value='/ProvinceServlet'/>",true);
        xmlHttp.send(null);
        xmlHttp.onreadystatechange = function(){
            if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
                var text = xmlHttp.responseText;
                var proArray = eval("("+text+")");
                for(var i=0;i<proArray.length;i++){
                    var pro = proArray[i];
                    var option = document.createElement("option");
                    option.value = pro.pid;
                    var node = document.createTextNode(pro.name);


                    option.appendChild(node);
                    //document.write(option.text);
                    document.getElementById("p").appendChild(option);
                }
            }else {
                document.write("!");
            }
        };
      };

  </script>
  • 写回答

3条回答

  • Go 旅城通票 2016-09-16 09:10
    关注

    没有问题,直接模拟你的数据

     <body>
        <h1>省市联动</h1>
        <h3 id="h3"></h3>
        <select name="province" id="p">
            <option>===请选择省份===</option>
        </select>
        <select name="city" id="c">
            <option>===请选择市===</option>
        </select>
    </body>
    <script type="text/javascript">
        //window.onload = function () {
           // var xmlHttp = createXMLHttpRequest();
           // xmlHttp.open("GET", "<c:url value='/ProvinceServlet'/>", true);
           // xmlHttp.send(null);
          //  xmlHttp.onreadystatechange = function () {
             //   if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
                    var text ='[{name:"name1",id:"id1"}]'// xmlHttp.responseText;
                    var proArray = eval("(" + text + ")");
                    for (var i = 0; i < proArray.length; i++) {
                        var pro = proArray[i];
                        var option = document.createElement("option");
                        option.value = pro.pid;
                        var node = document.createTextNode(pro.name);
    
    
                        option.appendChild(node);
                        //document.write(option.text);
                        document.getElementById("p").appendChild(option);
                    }
                //} else {
               //     document.write("!");
              //  }
           // };
        //};
    
    </script>
    
    评论

报告相同问题?

悬赏问题

  • ¥20 关于#qt#的问题:Qt代码的移植问题
  • ¥50 求图像处理的matlab方案
  • ¥50 winform中使用edge的Kiosk模式
  • ¥15 关于#python#的问题:功能监听网页
  • ¥15 怎么让wx群机器人发送音乐
  • ¥15 fesafe材料库问题
  • ¥35 beats蓝牙耳机怎么查看日志
  • ¥15 Fluent齿轮搅油
  • ¥15 八爪鱼爬数据为什么自己停了
  • ¥15 交替优化波束形成和ris反射角使保密速率最大化