这个使用ajax的吧,不然怎么做啊?asp不知道能不能用这个

解决方案 »

  1.   

    4000不是很多啊,可以一次取出来,用js处理
    联动的意思也就是在前一个的onchange事件里处理本身的options内容.
    并不怎么难,自己写写看呗
      

  2.   

    我写过一个,从3级联动改过来的,读取TOP几条可以实现这个功能,全读就不行了
      

  3.   

    我改过的程序,显示过了就不行了.
    请高手帮帮忙,或重新给我点思路,谢谢
    <script language=javascript>var dept_divi_sect1='<DEPT_DIVI_SECT>'+<%
    sql="select * from ts_selections where ts_fldid =(select ts_id from ts_fields where ts_name='商品品类' and ts_tableid=1001) and ts_status<>1 order by ts_name"
    set rs=conncrm.execute(sql)
    do while not rs.eof
    %>'<DEPT  ID="<%=rs("id")%>" NAME="<%=rs("name")%>">'+   <% sqlpp="exec sel_sppp '"&rs("id")&"'"   //这里我做了一个存储过程,加快读取速度
     response.write sqlpp
    set rspp=conncrm.execute(sqlpp)
    if rspp.eof then 
    else
    dim pplist
    pplist=rspp("col")
    if pplist="" or isnull(pplist) then
    elsesqlpplist="select * from ts_selections where ts_id in ("&pplist&")"
    //response.write sqlpplist
    set rspplist=conncrm.execute(sqlpplist)
    do while not rspplist.eof
      %>
    '<DIVI  ID="<%=rspplist("id")%>" NAME="<%=rspplist("name")%>">'+ '</DIVI>'+
    <%
    rspplist.movenext
    loop
    end if
    end if
    %>
         
    '</DEPT>'+ 
    <%
    rs.movenext
    loop
    %>'</DEPT_DIVI_SECT>';/*选择类别
    id是用于区分同一个页面里多组这样的联动下拉列表框*/ 
     
    function ChooseDept1(id)
    {
      var lb;
      if(id==0)
        lb=form.tagBumylx1;

      else
        lb=form.tagBumyzlx1; 

      //用于生成xml的程序文件,
      //这里我写了一段示例XML代替,
      //如果要加载XML文件,下面就改用load()。
      var source = new ActiveXObject('Microsoft.XMLDOM');
      source.async = false;
      //source.load(sourceName);
      source.loadXML(dept_divi_sect1);
      root1 = source.documentElement; 
      sortFieldText1=root1.selectNodes("/DEPT_DIVI_SECT/DEPT/@NAME");
      sortFieldValue1=root1.selectNodes("/DEPT_DIVI_SECT/DEPT/@ID");
      var oOption = document.createElement('OPTION');
      oOption.text = " 无 ";
      oOption.value = "-1";
      lb.options.add(oOption); 
      for(var i=0;i<sortFieldText1.length;++i)
      {
        var oOption = document.createElement('OPTION');
        oOption.text = ""+sortFieldText1[i].text+"";
        oOption.value = sortFieldValue1[i].text;
        lb.options.add(oOption); 
      }
       ChooseDivi1(id);
    }
    /*选择技能*/
    function ChooseDivi1(id)
    {
      var lb;
      var skill;
      if(id==0)
      {
        lb=form.tagBumylx1;
        skill=form.tagBumyzlx1;
      }
      else
      {    lb=form.tagBumylx2;  
        skill=form.tagBumyzlx2;    
      }
      x=lb.selectedIndex;
      y=lb.options[x].value;
      sortFieldText1=root1.selectNodes("/DEPT_DIVI_SECT/DEPT[@ID='"+y+"']/DIVI/@NAME");
      sortFieldValue1=root1.selectNodes("/DEPT_DIVI_SECT/DEPT[@ID='"+y+"']/DIVI/@ID");
      for(var i=skill.options.length-1;i>=0;--i)
      {
        skill.options.remove(i)
      }
      var oOption = document.createElement('OPTION');
      oOption.text = " 无 ";
      oOption.value = "";
      skill.options.add(oOption); 
      for(i=0;i<sortFieldText1.length;++i)
      {
        var oOption = document.createElement('OPTION');
        oOption.text = ""+sortFieldText1[i].text+"";
        oOption.value = sortFieldValue1[i].text;
        skill.options.add(oOption); 
      }
    }</script>
    <body onload=ChooseDept1(0);><form name="form" method="post" action="">    <select name="tagBumylx1" size="1" id="tagBumylx1" onChange=ChooseDivi1(0)>
        </select>
        <select name="tagBumyzlx1" size="1" id="tagBumyzlx1" >
        </select>
    </form>