判断错了导致超出索引了吧?       for(var i=0;i<branchList.length;i++)
       {
             document.getElementById("ddlDepart").options.add(new Option(departList[i].name,departList[i].id));  //下拉框2  
       }
================>
       for(var i=0;i<departList.length;i++)
       {
             document.getElementById("ddlDepart").options.add(new Option(departList[i].name,departList[i].id));  //下拉框2  
       }

解决方案 »

  1.   

    超出索引?不会啊~~一开始就报不是对象的错误了.....调试的时候departList有东西的...呵呵,上面的代码有区别吗。。?(除了那个括号,呵呵)
    我今天对着电脑一天了,眼花了
      

  2.   


    for(var i=0;i<branchList.length;i++)
           {
                document.getElementById("ddlBranch").options.add(new Option(branchListi].name,branchList[i].id)); //下拉框1
           } 
           for(var i=0;i<branchList.length;i++)
           {
                 document.getElementById("ddlDepart").options.add(new Option(departList[i].name,departList[i].id));  //下拉框2  
           }
    楼主是这样吧!for(var i=0;i<branchList.length;i++)
           {
                document.getElementById("ddlBranch").options.add(new Options(branchListi].name,branchList[i].id)); //下拉框1
           } 
           for(var i=0;i<branchList.length;i++)
           {
                 document.getElementById("ddlDepart").options.add(new Options(departList[i].name,departList[i].id));  //下拉框2  
           }
    你不是说是new Options 嘛
    怎么new Option ???
      

  3.   

    顶上来呀~~~哪位教一下啊~~或者有别的new Option()的方式~?
      

  4.   


    for(var i=0;i<branchList.length;i++)
    {
        document.getElementById("ddlBranch").options.add(new Option(branchListi].name,branchList[i].id)); //下拉框1
    } for(var i=0;i<branchList.length;i++)
    {
       document.getElementById("ddlDepart").options.add(new Option(branchList[i].name,branchList[i].id));  //下拉框2  
    }
      

  5.   

    for(var i=0;i<branchList.length;i++)
           {
                document.getElementById("ddlBranch").options.add(new Option(branchList[i].value,branchList[i].id)); //下拉框1
           } 
           for(var i=0;i<branchList.length;i++)
           {
                 document.getElementById("ddlDepart").options.add(new Option(departList[i].value,departList[i].id));  //下拉框2  
           }
    也可以
    for(var i=0;i<branchList.length;i++)
           {
                document.getElementById("ddlBranch").options.add(new Option(branchList[i].value,branchList[i].value)); //下拉框1
           } 
           for(var i=0;i<branchList.length;i++)
           {
                 document.getElementById("ddlDepart").options.add(new Option(departList[i].value,departList[i].value));  //下拉框2  
           }
      

  6.   

    //也不知道上面我写的,对不对,不过下面的提醒肯定是对的:new Option('b','B');  //其中B表示列表选项的值,b用于在页面显示;
      

  7.   

    没办法重现你的情况,我改成了静态变量,如下是可以的,把静态变量改成动态,应该也不会有什么问题。
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
     <HEAD>
      <TITLE> New Document </TITLE>
      <META NAME="Generator" CONTENT="EditPlus">
      <META NAME="Author" CONTENT="">
      <META NAME="Keywords" CONTENT="">
      <META NAME="Description" CONTENT="">
     </HEAD> <BODY>
    <select id="ddlBranch" ></select>
    <select id="ddlDepart"></select>  <script>
           for(var i=0; i<1; i++)
           {
                document.getElementById("ddlBranch").options.add(new Option("1","2")); //下拉框1
           }        for(var i=0;i<1;i++)
           {
                 document.getElementById("ddlDepart").options.add(new Option("3","4"));  //下拉框2  
           }  </script>
     </BODY>
    </HTML>
      

  8.   

    楼主遇到这种情况,你就费点事,把代码拆成多句进行调试,看到底是哪出的问题?        for(var i=0;i<branchList.length;i++)
           {
                var _n = branchList[i].name;
                var _id = branchList[i].id;
                var _nOp = new Option(_n,_id);
                document.getElementById("ddlBranch").options.add(nOp); //下拉框1
           } 
    // 下面也照着改一下,再调试
           for(var i=0;i<branchList.length;i++)
           {
                 document.getElementById("ddlDepart").options.add(new Option(departList[i].name,departList[i].id));  //下拉框2  
           }
      

  9.   


    for(var i=0;i<branchList.length;i++)
           {
                document.getElementById("ddlBranch").options.add(new Option(branchList[i].name,branchList[i].id)); //下拉框1
           } 
           for(var i=0;i<branchList.length;i++)
           {
                 document.getElementById("ddlDepart").options.add(new Option(departList[i].name,departList[i].id));  //下拉框2  
           }呵呵~~是笔误吧。。其实2楼就是想告诉你这个原因
    branchList!=departList //下拉框2  
      

  10.   

    for(var i=0;i<branchList.length;i++)
           {
                document.getElementById("ddlBranch").options.add(new Option(branchList[i].name,branchList[i].id)); //下拉框1
           } 
           for(var i=0;i<branchList.length;i++)//这个for循环里面还是branchList.length,可能错了
           {
                 document.getElementById("ddlDepart").options.add(new Option(departList[i].name,departList[i].id));  //下拉框2  
           }
      

  11.   

    帮帮忙啊各位~~
    我调试的时候
    到这里for(var i=0;i<branchList.length;i++)
    branchList是有值的但是length却是0~~~