调用select的onChange()事件,然后提交到本页面,然后再取出相应的值
但是一般来说应该把这个级联数据放在缓存里面

解决方案 »

  1.   

    纯JSP是实现不了的,要用JSP+JavaScript才能做到的。
      

  2.   

    应该很多的,就是联动<form name=form1>
            <select name=mClass onchange="changeByValue(this.value)">
              <option value="" selected>请选择大类分区</option>
            </select>
            <select name=mKind>
              <option value="" selected>请选择小类分区</option>
            </select>
    </form>
    <script language=javascript><!--
    var mKindouterHTML = document.form1.mKind.outerHTML.substr(0, document.form1.mKind.outerHTML.length-9);
    function String.prototype.Trim(){return this.replace(/(^\s*)|(\s*$)/g,"");}
    function mclass()
    {
       var mclass = ["html","javascript","vbscript","css","sql","asp"];   var e = document.form1.mClass;
       var s = e.outerHTML.substr(0, e.outerHTML.length-9) + "\r\n";
           for (var i=0; i<mclass.length; i++){
           s += "<option value='"+ mclass[i] +"'>"+ mclass[i] +"</option>\r\n";}
           s += "</select>";
           e.outerHTML = s;
    }  mclass();
    function changeByValue(val)
    {
       var mhtml       = ["html"];
       var mjavascript = ["语句","方法"]
       var mvbscript   = ["vbscript"]
       var mcss        = ["css"]
       var msql        = ["sql"]
       var masp        = ["asp"]
       
       var e = document.form1.mKind;
       var s = mKindouterHTML;
       if (val.Trim() == "") {s += "</select>"; e.outerHTML = s; return;}
       var a = eval("m"+ 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>
      

  3.   

    http://search.csdn.net/Expert/topic/2012/2012239.xml?temp=.6472589
      

  4.   

    建议你到163或263的收费邮箱网页去看一下,里面有省市联动的页面,看源代码,找到相应的js文件,再下载下来,自己改改就是自己的了,这是我的招数.
    或者到google.中搜javascript jsp 联动 select ,这几个关键词,也一定有收获,
      

  5.   

    在onChange()事件里作处理,可以作为条件
      

  6.   

    问题仍然没有解决~~~各位高手,能不能写一个超简单的例子呢?谢谢了现在基础思路都有了InfoList.java 是专门列出来所有信息的当然数据都放到数组中.然后在从web页上显示现在当选择select时,如何将select1中选中的结果当一个条件传给一个中间的东西(问题就在这里)然后在显示select2的内容呢?!?!?!?谢谢各位了!!!帮一下我吧!
      

  7.   

    用标签,把select1中选中的东西放到request里去,然后再InfoList.java里取出来
      

  8.   

    两种方案,一、把所有要显示的数据首先读取出来,放在一个数组里,用JS+JSP来实现,第一个select改变后,用onChange属性来调用JS,把相应的值赋给第二个select。
    二、先读出第一个select需要的数据,放进去,当改变是提交本页面,即<form action="本页面"></form>,在这次刷新中根据第一个select所选的数据,从数据库中读取相应的第二个select数据,放入其中。