二维数组可以,或者是第一个select改变是相应一个函数,在函数中提交页面到服务器处理一次。 

解决方案 »

  1.   

    <form name=form1><select name=sheng onchange="cityName(this.value)">
      <option value="">请选择省名</option>
    </select><select name=city>
      <option value="">请选择城名</option>
    </select></form><script language=javascript>
    var cityouterHTML = document.form1.city.outerHTML.substr(0, document.form1.city.outerHTML.length-9);
    function sheng()
    {
       var shengName = ["浙江", "江苏", "安徽", "江西"]; //这些数据可以从数据库中取得   var e = document.form1.sheng;
       var s = e.outerHTML.substr(0, e.outerHTML.length-9) + "\r\n";
           for (var i=0; i<shengName.length; i++){
           s += "<option value='"+ shengName[i] +"'>"+ shengName[i] +"</option>\r\n";}
           s += "</select>";
           e.outerHTML = s;
    }  sheng();
    function cityName(val)
    {
       var 浙江 = ["杭州", "宁波", "温州", "绍兴", "金华", "湖州"];
       var 江苏 = ["南京", "苏州", "无锡", "常州", "镇江", "徐州"];
       var 安徽 = ["合肥", "翕县", "黄山", "祁门", "休宁"];
       var 江西 = ["南昌", "九江", "赣州", "上饶", "新余", "景德镇"]; 
     //这些数据可以从数据库中取得   var e = document.form1.city;
       var s = cityouterHTML;
       if (val == "") {s += "</select>"; e.outerHTML = s; return;}
       var a = eval(val);
           for (var i=0; i<a.length; i++)
           {
               s += "<option value='"+ a[i] +"'>"+ a[i] +"</option>\r\n";
           }
           s += "</select>";
           e.outerHTML = s;
    }
    </script>
      

  2.   

    去看看中央电视台的怎么写吧 http://www.cctv.com/
    在它的首页上有个 “栏目查找” 功能,你自己查源代码吧。那个写的不错,一看就是从数据库提出来的数据生成数组。