跟select的联动方式差不多
不同点在于遍历checkbox选择然后生成一个变成多的个区别

解决方案 »

  1.   


    <html>
    <head>
    <script language="JavaScript" type="text/javascript"> 
    function getNum(){  
     var sNum=document.form1.num.selectedIndex; 
     document.getElementById(sNum).style.display ="block";
     for(var i=0;i<sNum;i++){
       document.getElementById(i).style.display ="none";
     }
     for(var i=sNum+1;i<4;i++)
     {
       document.getElementById(i).style.display ="none";
      }
    } </script> 
    </hrad> 
    <body> 
    <form METHOD="POST" name="form1"> 
    <option value="num" onChange="getNum()"> 
    <option value="0">请选择 </option> 
    <option value="1">1</option> 
    <option value="2">2</option>
    <option value="3">3</option>  
    </selt> 
    <div id="0" style="display:none;"></div>
    <div id="1" style="display:none;">
    <input type="checkbox">11<input type="checkbox">12<input type="checkbox">13
    </div> 
    <div id="2" style="display:none;">
    <input type="checkbox">21<input type="checkbox">22<input type="checkbox">23
    </div>
    <div id="3" style="display:none;">
    <input type="checkbox">31<input type="checkbox">32<input type="checkbox">33
    </div>
    </from> 
    </body> 
    </html>
      

  2.   


    <html>
    <head>
    <script language="JavaScript" type="text/javascript"> 
    function getNum(){  
     var sNum=document.form1.num.selectedIndex; 
     document.getElementById(sNum).style.display ="block";
     for(var i=0;i<sNum;i++){
       document.getElementById(i).style.display ="none";
     }
     for(var i=sNum+1;i<4;i++)
     {
       document.getElementById(i).style.display ="none";
      }
    } </script> 
    </hrad> 
    <body> 
    <form method="post" name="form1"> 
    <select name="num" onChange="getNum()"> 
    <option value="0">请选择</option> 
    <option value="1">1</option> 
    <option value="2">2</option>
    <option value="3">3</option>  
    </select> 
    <div id="0" style="display:none;"></div>
    <div id="1" style="display:none;">
    <input type="checkbox">11<input type="checkbox">12<input type="checkbox">13
    </div> 
    <div id="2" style="display:none;">
    <input type="checkbox">21<input type="checkbox">22<input type="checkbox">23
    </div>
    <div id="3" style="display:none;">
    <input type="checkbox">31<input type="checkbox">32<input type="checkbox">33
    </div>
    </form> 
    </body> 
    </html>
    上面有点错误,下面的是好的啊
      

  3.   

    value为中文就行了
    为什么还要中文来做变量?
    自找麻烦?
      

  4.   

    我在后面加了个DIV  ID为“4”   OPTION也加了一个,但是出问题了。选择我新家的那个OPTION,我加的层能出现,但是选择别的,这个层没法消失。。是不是可以无限加的?
      

  5.   

    <html>
    <head>
    <script language="JavaScript" type="text/javascript"> 
    function getNum(){  
     var sNum=document.form1.num.selectedIndex; 
     document.getElementById(sNum).style.display ="block";
     for(var i=0;i<sNum;i++){
       document.getElementById(i).style.display ="none";
     }
     for(var i=sNum+1;i<4;i++)
     {
       document.getElementById(i).style.display ="none";
      }
    } </script> 
    </hrad> 
    <body> 
    <form method="post" name="form1"> 
    <select name="num" onChange="getNum()"> 
    <option value="0">请选择</option> 
    <option value="北京">北京</option> 
    <option value="上海">上海</option>
    <option value="天津">天津</option>
    <option value="浙江">浙江</option>  
    </select> 
    <div id="0" style="display:none;"></div>
    <div id="1" style="display:none;">
    <input type="checkbox">11<input type="checkbox">12<input type="checkbox">13
    </div> 
    <div id="2" style="display:none;">
    <input type="checkbox">21<input type="checkbox">22<input type="checkbox">23
    </div>
    <div id="3" style="display:none;">
    <input type="checkbox">31<input type="checkbox">32<input type="checkbox">33
    </div>
    <div id="4" style="display:none;">
    <input type="checkbox">41<input type="checkbox">42<input type="checkbox">43
    </div>
    </form> 
    </body> 
    </html>
    我自己加了一个,但是出错了,我自己加的那个消失不了!
      

  6.   


    for(var i=sNum+1;i<4;i++)所对应的数字也要加一,
    要不判断出错啊,for(var i=sNum+1;i<5;i++)或则
    for(var i=sNum+1;i<=4;i++)