http://www.csdn.net/Expert/TopicView1.asp?id=789492

解决方案 »

  1.   

    上回就是你呀,为什么AB不另起一组下拉呢?,反正和CD没关系
    A:华东,华南
    B:上海,南京(与华东对应);
       广州,深圳(与华南对应);
      

  2.   

    秋水兄:上次我做的是不用数据库驱动的,那个后来做好了。这次我想改成调动数据库的这种,你可以去http://www.csdn.net/expert/topic/793/793010.xml?temp=.4550135看看。
    我可以作出:A-C-D,还可以单独作出A-B,或者A-C,就是不能作出A-B,A-C-D共存的程序,反正A不能同时关联B和C!我已经被困了几天了!
    请高手给出源代码。可发信息给我,解决者200分赠送!
      

  3.   

    秋水兄:
    A-C-D
    A-B
    有关系的。
    你还在吗?
      

  4.   

    如果你的列表框数据是动态加载的,最好利用xmldom的load方法或xmlhttp的send同步获取数据。
      当a被点中,xmldom.load("b.asp?a=华东")
      b.innerHTML = xmldom.documentElement.xml  b.asp:
       set rs=cnn.exec("select * from b where a='华东'")
       将rs中的记录转化成option大致就是这个意思。
      

  5.   

    <select name=sel1></select>
    <select name=sel4></select>
    <select name=sel2></select>
    <select name=sel3></select>
    <input name=result><script>
    var arrSel=["sel1","sel2","sel3"];//arrSel定义了要修改的下拉框
    var i=0,arrData=[];//arrData中搁的是数据,每条都显示各级的数据
    arrData[i++]=["华东","华东一公司","宁波"]
    arrData[i++]=["华东","华东一公司","张家港"]
    arrData[i++]=["华东","华东二公司","杭州"]
    arrData[i++]=["华东","华东二公司","苏州"]
    arrData[i++]=["华南","华南一公司","东莞"]
    arrData[i++]=["华南","华南一公司","惠州"]
    arrData[i++]=["华南","华南二公司","中山"]
    arrData[i++]=["华南","华南二公司","顺德"]var selCity="sel4";//selCity定义了要修改的下拉框
    arrData["华东"]=["上海","南京"]
    arrData["华南"]=["广州","深圳"]
    </script>
    <script>
    function qswhInit(num){
    /******* by qiushuiwuhen(2002-5-15) ********/
    var i,j,arrTemp=[];
    for(i=0;i<num;i++)arrTemp[i]=document.all(arrSel[i]).options[document.all(arrSel[i]).selectedIndex].text
    if(num==arrSel.length){//这里处理最后的数据。
    document.all("result").value="选中了("+arrTemp+")";return;
    }
    if(num==1){
    with(document.all(selCity)){
    length=0;
    tmp=arrData[arrTemp[0]];
    for(i=0;i<tmp.length;i++)
    options[length++].text=tmp[i];
    }
    }
    with(document.all(arrSel[num])){
    length=0
    for(i=0;i<arrData.length;i++){
    for(j=0;j<num;j++)if(arrTemp[j]!=arrData[i][j])break;
    if(j!=num)continue;
    if(length==0||options[length-1].text!=arrData[i][num])
    options[length++].text=arrData[i][num];
    }
    onchange=new Function("qswhInit("+(num+1)+")");
    onchange();
    }
    }
    qswhInit(0);//初始化
    </script>
      

  6.   

    qiushuiwuhen(秋水无恨) :
    你这个不是数据库驱动的
    这个我已经知道了
    不过还是谢谢你。