试试这样可以吗<form method=post name=form1>
<input type=checkbox onclick="s(this)">
<select onchange=chg() name=a>
</select>
<select name=b>
</select>
</form>
<script>
var arr=[["加利福尼亚1","加利福尼亚2","加利福尼亚3"],["华盛顿a","华盛顿b","华盛顿c"]]//这里你自己改
function s(o){
if(o.checked){
form1.a.add(new Option("加利福尼亚",''))
form1.a.add(new Option("华盛顿",''))
}
else 
{
form1.a.length=0;
form1.b.length=0;
}
}
function chg(){
var i=document.all.a.selectedIndex
with(document.all.b){
length=0;
for(j=0;j<arr[i].length;j++)
options.add(new Option(arr[i][j],arr[i][j]))
}
}
</script>

解决方案 »

  1.   

    怎么改,以前的selectedIndex用什么来代替?本人是JavaScript菜鸟,能不能帮助具体实现一下?
      

  2.   

    http://expert.csdn.net/Expert/topic/1447/1447234.xml?temp=.1549494
      

  3.   

    <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>
     <table id="level1" width="439" border="0" cellspacing="0" cellpadding="0">
    <tr id="s1">
        </tr>
    </table>
    <table width="439" border="0" cellspacing="0" cellpadding="0">
    <tr id="s2">
     </font></a></td>
        </tr>
    </table>
    <table width="439" border="0" cellspacing="0" cellpadding="0">
    <tr id="s3">
     </font></a></td>
        </tr>
    </table>
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    //选择框的名字
    selector = [ "s1", "s2", "s3", "s4" ];
    //选择项: "名字", "值", 子选择
    menu = [
     "中国","86",
      [
      "北京","BJ",
       [
       "海淀","1",null,
       "朝阳","2",null
       ],
      "四川","SC",
       [
       "成都","28",null,
       "乐山","",null,
       "攀枝花","",null,
       "自贡","",null,
       "德阳","",null,
       "绵阳","",null
       ]
      ],
     "米国","1",
      [
      "加利福尼亚","CA",
       [
       "旧金山","1",null,
       "洛杉矶","2",null
       ],
      "华盛顿","WA",
       [
       "西雅图","seattle",null,
       "华盛顿特区","seattle",null
       ]
      ]
     ];
     
    function wizz(level)
    {
     if( level == 0 )
      a = menu;
     else
     {
      str = "menu";
      for( var i=0; i<level; i++ )
       str += "[" + (document.all[selector[i]].selectedIndex * 3 + 2)  + "]";
      a = eval(str);
     }
     if( a == null ) 
    return;
     s = document.all[selector[level]];
     p = s.parentElement;
     s.removeNode(true);
     
     s = document.createElement("<tr id="+selector[level]+"></tr>");
     p.appendChild(s);
     i=0;
     while( i < Math.floor(a.length/3) )
     {
      s.selectedIndex = 0;
      var o=document.createElement("<td style='cursor:hand;color:blue' Index="+i+" onclick='this.parentElement.selectedIndex=this.Index;wizz(" + (level+1) + ")' value=" + a[i*3+1]+"></td>");
      o.innerHTML=a[i++*3]
      s.insertAdjacentElement("beforeEnd", o);
     }
     wizz(level+1);
    }
    wizz(0);function wizzClick(level)
    {


    //-->
    </SCRIPT>
    </BODY>
    </html>