<title>华东电网500kV输变电设备管理信息系统</title><script language="javascript">
  provinces = new Array("上海","江苏","浙江","安徽");
  provincecodes = new Array("41","42","43","44");
  gdjmc = new Array(""
,"上海超高压输变电公司","南京供电局","常州供电局","无锡供电局","苏州供电局","徐州电业局","淮安供电局","扬州供电局","杭州电力局","宁波供电局","绍兴电力局","嘉兴电力局","湖州电力局","金华电业局","丽水电业局","温州电业局","合肥供电局","芜湖供电局");
  gdjdm = new Array(""
,"4115","4215","4217","4218","4219","4220","4222","4223","4301","4302","4303","4304","4305","4306","4308","4310","4412","4413"
);
  bdzmc = new Array(""
,"南桥","杨行","杨高","泗泾","黄渡","东善桥","武南","斗山","石牌","车坊","任庄","三堡","东明","上河","江都","瓶窑","乔司","兰亭","王店","双龙","瓯海","肥西","繁昌"
  );
  bdzdm = new Array(""
,"411502","411503","411504","411505","411501","421501","421701","421801","421901","421902","422001","422002","422003","422201","422301","430101","430102","430301","430401","430601","431001","441201","441301"
);var bprov = true;
var bgdj = true;
var bbdzmc = true;var bsbmc = false;
var bsbdl = false;
function AddToOptionList(OptionList, OptionValue, OptionText) {
OptionList[OptionList.length] = new Option(OptionText, OptionValue);
}
function ClearOptions(OptionList){
  for (x = OptionList.length; x >= 0; x = x - 1) {
  OptionList[x] = null;
  }
}
function gdj_change(){
  if (!bbdzmc) return;
  ClearOptions(conditions.bdzmc);
  gdjname = conditions.gdj.value;
  var i=0;
  var find=false;
  var bdzmclen = bdzdm.length;
  find = (gdjname != "");
  if (find){
    AddToOptionList(conditions.bdzmc,"","");
    while(i<bdzmclen){
      var bdzdmsub = bdzdm[i].substring(0,4);
      if (bdzdmsub == gdjname){
if (bbdzmc){
  AddToOptionList(conditions.bdzmc,bdzdm[i],bdzmc[i]);
}
      }
      i++;
    }
  }else{
    i=0;
    if (bprov){
      var findprov = false;
      findprov = (conditions.prov.value != "");
      if (findprov){
var provtext = conditions.prov.innerText;
//alert(provtext);
AddToOptionList(conditions.bdzmc,"","");
while(i<bdzmclen){
  var bdzdmsub = bdzdm[i].substring(0,2);
  var provtext = conditions.prov.innerText;
  var provcode = "";
  for (m=0;m<4;m++){
    if (provincecodes[m] == provtext){
      provcode = provincecodes[m];
    }
  }   if (bdzdmsub == provcode.substring(0,2)){
    if (bbdzmc){
      AddToOptionList(conditions.bdzmc,bdzdm[i],bdzmc[i]);
    }
  }
  i++;
}
      }else{
   ClearOptions(conditions.bdzmc);
k=0;
    while(k<bdzmclen){
      AddToOptionList(conditions.bdzmc,bdzdm[k],bdzmc[k]);
      k++;
}}
    }else{
 //     alert("add all bdzmc");
      ClearOptions(conditions.bdzmc);
      var k=0;
      AddToOptionList(conditions.bdzmc,"","");
      while(k<bdzmclen){
if (bbdzmc){
  AddToOptionList(conditions.bdzmc,bdzdm[k],bdzmc[k]);
}
k++;
      }
    }
  }
}function prov_change(){
  if (bgdj)
    ClearOptions(conditions.gdj);
  if (bbdzmc){
    ClearOptions(conditions.bdzmc);
  }
  provincename = conditions.prov.value;
  var i=0;
  var find=false;
  find =( provincename != "");
  var gdjlen=gdjdm.length;
  var bdzmclen = bdzmc.length;
  var j=0;
  if (!find){
    var k=0;
    if (bgdj){
    while(k<gdjlen){
      var gdjsub=gdjdm[k].substring(0,2);
      AddToOptionList(conditions.gdj,gdjdm[k],gdjmc[k]);
      k++;
    }
    }
    k=0;
    if (bbdzmc){
      AddToOptionList(conditions.bdzmc,"","");
    while(k<bdzmclen){
      AddToOptionList(conditions.bdzmc,bdzdm[k],bdzmc[k]);
      k++;
    }
    }
  }else{
    var provname = conditions.prov.children(conditions.prov.selectedIndex);
    var provcodea = "";
    for (z=0;z<4;z++){
      if (provincecodes[z]==provname.value){
provcodea = provincecodes[z].substring(0,2);
break;
      }
    }
    if (bgdj){
      AddToOptionList(conditions.gdj,"","");
      while(j<gdjlen){
var gdjsub=gdjdm[j].substring(0,2);
if (gdjsub == provcodea.substring(0,2)){
  if (bgdj)
    AddToOptionList(conditions.gdj,gdjdm[j],gdjmc[j]);
}
j++;
      }
    }
    if (bbdzmc){
      var provname = conditions.prov.children(conditions.prov.selectedIndex);
      var provcodea = "";
      for (z=0;z<4;z++){
if (provincecodes[z]==provname.value){
  provcodea = provincecodes[z].substring(0,2);
  break;
}
      }
      var z=0;
      AddToOptionList(conditions.bdzmc,"","");
      while(z<bdzmc.length){
var bdzdmsub = bdzdm[z].substring(0,2);
if (provcodea == bdzdmsub){
  AddToOptionList(conditions.bdzmc,bdzdm[z],bdzmc[z]);
}
z++;
      }
    }
  }
}</script><!--begin flylogo--
<script src="public/fly.js"></script>
--end flylogo-->
<HTML><HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<BODY>
<table border="0" cellpadding="0" cellspacing="0" width="724">
  <tr valign="top">
    <td rowspan="2" width="76"><IMG border=0 height=74 name=inside_r04_c01 src="../Images/inside_r04_c01.jpg" width=76></td>
    <td bgcolor="#e2e2e2" width="307">&nbsp;</td>
    <td width="35"><IMG border=0 height=39 name=inside_r04_c05 src="../Images/inside_r04_c05.jpg" width=35></td>
    <td rowspan="2" width="310"><IMG height=74 src="../Images/inside_quexian05.gif" width=310></td>
  </tr>
  <tr>
    <td colspan="2" valign="center" bgcolor=#ffffff> 
       <IMG align=absMiddle height=35 src="../Images/8-icon01.gif" width=36 b> 设备台帐
    </td>
  </tr>
</table>

解决方案 »

  1.   

    <body leftmargin="0" topmargin="0" link="#000000" vlink="#ff9900" alink="#ff9900"><table border=0 cellpadding=0 cellspacing=0 width=724><tr><td width=20 bgcolor=#e2e2e2></td><td>
        <form name=read_jg target=dataFrame method=get action=read_jg.jsp>
        <input type=hidden value="" name=bdzmc>
        </form>
        <form name=read_factory target=dataFrame method=get action=read_factory.jsp>
        <input type=hidden value="" name=sbdlmc>
        </form>
    <form name="conditions" action="ztcx_result.jsp" method=get>
    <input type=hidden value="" name=sbzt>
    <table border=0>
    <tr><td><table bgcolor="#a4d0ff"width=660 bordercolor=white cellpadding=1 cellspacing=1 border=1 style="font-size:12px;color:#ffffff">
    <tr><td colspan=3 bgcolor=#0066df height=24 align=center><b>选择设备查询条件</b></td></tr>  <tr>
        <td width=100 align=right bgcolor=#0099ff > <b>省份:</b> </td>
        <td colspan=2><select width=100 name="prov" onchange="prov_change()" style="font-size:12px">
          <option value=""></option>
          <option value="41">上海</option>
          <option value="42">江苏</option>
          <option value="43">浙江</option>
          <option value="44">安徽</option></select>
        </td>
      </tr>  <tr>
        <td width=100 align=right bgcolor=#0099ff > <b>供电局:</b> </td>
        <td colspan=2><select width=100 name="gdj" onchange="gdj_change()" style="font-size:12px">
           <option value=""></option>  <option value="4115">上海超高压输变电公司</option>  <option value="4215">南京供电局</option>  <option value="4217">常州供电局</option>  <option value="4218">无锡供电局</option>  <option value="4219">苏州供电局</option>  <option value="4220">徐州电业局</option>  <option value="4222">淮安供电局</option>  <option value="4223">扬州供电局</option>  <option value="4301">杭州电力局</option>  <option value="4302">宁波供电局</option>  <option value="4303">绍兴电力局</option>  <option value="4304">嘉兴电力局</option>  <option value="4305">湖州电力局</option>  <option value="4306">金华电业局</option>  <option value="4308">丽水电业局</option>  <option value="4310">温州电业局</option>  <option value="4412">合肥供电局</option>  <option value="4413">芜湖供电局</option> </select>
        </td>
      </tr>  <tr>
        <td width=100 align=right bgcolor=#0099ff > <b>变电站名称:</b> </td>
        <td colspan=2><select width=100 name="bdzmc" onchange="update_sbjg()" style="font-size:12px">
          <option value=""></option>    <option value="411502">南桥</option>    <option value="411503">杨行</option>    <option value="411504">杨高</option>    <option value="411505">泗泾</option>    <option value="411501">黄渡</option>    <option value="421501">东善桥</option>    <option value="421701">武南</option>    <option value="421801">斗山</option>    <option value="421901">石牌</option>    <option value="421902">车坊</option>    <option value="422001">任庄</option>    <option value="422002">三堡</option>    <option value="422003">东明</option>    <option value="422201">上河</option>    <option value="422301">江都</option>    <option value="430101">瓶窑</option>    <option value="430102">乔司</option>    <option value="430301">兰亭</option>    <option value="430401">王店</option>    <option value="430601">双龙</option>    <option value="431001">瓯海</option>    <option value="441201">肥西</option>    <option value="441301">繁昌</option>  </select>
        </td>
      </tr>
    </select></td>
    </select></td></tr><tr> <tr><td width=100>&nbsp;</td><td colspan=2><input type=button onclick="javascript:checkform();" value="查询"style="font-size:12px"></td></tr>
    </table></td>
    </tr></table>
    </form><br><br><br>
     
    </td><td width=25 bgcolor=#e2e2e2></td><tr></table>
    </body>
      

  2.   

    不用贴那么多的代码也,js版=>专题=>关联菜单,多级个都行
      

  3.   

    三级下拉框连动
    '
    '数据库:
    'location
    '表1 loaction  所在地表
    '   字段
    '   loactionid  (主键)
    '   loactionname 名字
    '表2 district  所在的地区表
    '   字段
    '   locationid (主键)
    '    districtid
    '    districtname
    '表3 village  所在的县区表
    '   字段
    '   districtid (主键)
    '   villageid
    '   villagename
    %>
    <html>
    <head>
    <title>List</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <%
    dim conn
    dim rs
    dim sql
    dim count
    dim rs1
    dim sql1
    dim rs2
    dim sql2
    dim count2set conn=server.createobject("adodb.connection")
    conn.open"provider=sqloledb;data source=192.168.0.33;uid=sa;pwd=;database=location;"
    sql = "select * from district order by locationid asc"
    set rs = conn.execute(sql)
    %>
    <script language = "JavaScript">
    var onecount;
    onecount=0;
    subcat = new Array();
            <%
            count = 0
            do while not rs.eof 
            %>
    subcat[<%=count%>] = new Array("<%= trim(rs("districtname"))%>","<%= trim(rs("locationid"))%>","<%= trim(rs("districtid"))%>");
            <%
            count = count + 1
            rs.movenext
            loop
            rs.close
            set rs=nothing
            %>
    onecount=<%=count%>;function changelocation(locationid)
        {
        document.myform.smalllocation.length = 0;     var locationid=locationid;
        var i;
        document.myform.smalllocation.options[0] = new Option('==所选城市的地区==','');
        for (i=0;i < onecount; i++)
            {
                if (subcat[i][1] == locationid)
                { 
                    document.myform.smalllocation.options[document.myform.smalllocation.length] = new Option(subcat[i][0], subcat[i][2]);
                }        
            }
            
        }    
    </script>
    <%sql2 = "select * from village order by districtid asc"
    set rs2 = conn.execute(sql2)
    %>
    <script language = "JavaScript">
    var onecount2;
    onecount2=0;
    subcat2 = new Array();
            <%
            count2 = 0
            do while not rs2.eof 
            %>
    subcat2[<%=count2%>] = new Array("<%= trim(rs2("villagename"))%>","<%= trim(rs2("districtid"))%>","<%= trim(rs2("villageid"))%>");
            <%
            count2 = count2 + 1
            rs2.movenext
            loop
            rs2.close
            set rs2=nothing
            %>
    onecount2=<%=count2%>;function changelocation2(villageid)
        {
        document.myform.village.length = 0;     var villageid=villageid;
        var j;
        document.myform.village.options[0] = new Option('==所选地区的县区==','');
        for (j=0;j < onecount2; j++)
            {
                if (subcat2[j][1] == villageid)
                { 
                    document.myform.village.options[document.myform.village.length] = new Option(subcat2[j][0], subcat2[j][2]);
                }        
            }
            
        }    
    </script></head>
    <body>
    <form name="myform" method="post">
        题目:<input type="text" name="T2" size="20"><br>
        来源:<input type="text" name="T3" size="20"><br>
        分类:<select name="biglocation" onChange="changelocation(document.myform.biglocation.options[document.myform.biglocation.selectedIndex].value)" size="1">
            <option selected>请选择你所在的省份</option> 
            <% 
            
            sql1 = "select * from location order by locationname asc"
            set rs1 = conn.Execute (sql1)
            do while not rs1.eof
            %>
            <option value="<%=trim(rs1("locationid"))%>"><%=trim(rs1("locationname"))%></option>
           
            <%
            rs1.movenext
            loop
            rs1.close
            set rs1 = nothing
            conn.Close
            set conn = nothing
            %>
           </select> 
        
        <select name="smalllocation" onChange="changelocation2(document.myform.smalllocation.options[document.myform.smalllocation.selectedIndex].value)">                  
            <option selected value="">==所有地区==</option>
        </select>
            
        <select name="village" size="1">                 
            <option selected>==所有县区==</option>
        </select>
        <br>
        关键词:<input type="text" name="T4" size="20"><br>
        内容:<textarea rows="9" name="S1" cols="51"></textarea>
    </form></body>
    </html>
      

  4.   

    我有一个方法:
    1)在Javascript中声明3个数组A,B,C,用于填充三个select:S1,S2,S3
    2)在初始化时从数据库中填充数组A,用A填充S1
    3)对A的onchange处理,将A中符合条件的数据写入到B中,用B填充S2,
    4)对S3的处理类似
    5)在此过程中,只有对A的填充需要使用Jsp或Asp语句,其他的处理
    只要使用JavaScript,通过模式匹配即可。
      

  5.   

    {
    var gh=new Array();
    var xm=new Array();
    var bm=new Array();
    <%  num=0
       sql7="select gh,xm,ksbh from jb_ry  order by ksbh"
       set rs7=conn.execute(sql7) 
       while not rs7.eof %>
       gh[<%=num%>]=<%="'"&trim(rs7("gh"))&"'"%>; xm[<%=num%>]="<%=rs7("xm")%>"; bm[<%=num%>]="<%=trim(rs7("ksbh"))%>" ;
      <% num=num+1
       rs7.movenext
       wend
     %>
     }//通过部门编号过滤人员<option>中的value值为工号
    //bmbh=document.frm.ks.value,ryghxm=放人员下拉框的<td id=>的id号,selectstrhead为下拉框中的头:<select name=> 
    function ryglgh(bmbh,ryghxm,selectstrhead)
    {
     var selectstr;
     var iii;
     selectstr=selectstrhead;
     for (iii=0;iii<<%=num%>;iii++)
     {
       if (bmbh==bm[iii])
       {
       selectstr+="<option value='"+gh[iii]+"'>"+xm[iii]+"</option>";
       }
     }
     selectstr+="</select>";
     eval(ryghxm).innerHTML=selectstr; 
    }