jsp中如何实现下拉框二级联动

有两个下拉框,A下拉框里面有:所有员工、政治面貌、部门,我想实现这样的功能:A框中选择“所有员工”时,B下拉框不显示;A框中选择“政治面貌”时,B框中显示“党员”和“非党... 有两个下拉框,A下拉框里面有:所有员工、政治面貌、部门,我想实现这样的功能:A框中选择“所有员工”时,B下拉框不显示;A框中选择“政治面貌”时,B框中显示“党员”和“非党员”(自己加的,静态的);A框中选择“部门”时,B框中显示从数据库查询出来的相关部门信息,
这些功能如果单个让我做,我就会,可是一合起来,就不行了。。各位帮帮忙吧,
如果可以解决,我会追加30分!!!
展开
 我来答
dong_1984dd
2015-08-21 · TA获得超过1.1万个赞
知道小有建树答主
回答量:1070
采纳率:100%
帮助的人:228万
展开全部
  1. 参考下列代码:

  2. <html>
    < head>
    < title>多级关联菜单</title>
    < meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    < head>
    < script language="JavaScript">
    < !--
    function Dsy()
    {
     this.Items = {};
    }
    Dsy.prototype.add = function(id,iArray)
    {
     this.Items[id] = iArray;
    }
    Dsy.prototype.Exists = function(id)
    {
     if(typeof(this.Items[id]) == "undefined") return false;
     return true;
    }
    function change(v){
     var str="0";
     for(i=0;i<v;i++){ str+=("_"+(document.getElementById(s[i]).selectedIndex-1));};
     var ss=document.getElementById(s[v]);
     with(ss){
      length = 0;
      options[0]=new Option(opt0[v],opt0[v]);
      if(v && document.getElementById(s[v-1]).selectedIndex>0 || !v)
      {
       if(dsy.Exists(str)){
        ar = dsy.Items[str];
        for(i=0;i<ar.length;i++)options[length]=new Option(ar[i],ar[i]);
        if(v)options[1].selected = true;
       }
      }
      if(++v<s.length){change(v);}
     }
    }
    var dsy = new Dsy();
    dsy.add("0",["安徽","北京","福建","甘肃","广东","广西","贵州","海南","河北","河南","黑龙江","湖北","湖南","吉林","江苏","江西","辽宁","内蒙古","宁夏","青海","山东","山西","陕西","上海","四川","天津","西藏","新疆","云南","浙江","重庆"]);
    dsy.add("0_0",["安庆","蚌埠","巢湖","池州","滁州","阜阳","合肥","淮北","淮南","黄山","六安","马鞍山","宿州","铜陵","芜湖","宣城","亳州"]);
    //-->
    < /script>
    < script language = JavaScript>
    < !--
    var s=["s1","s2","s3"];
    var opt0 = ["-省-","-市-"];
    function setup()
    {
     for(i=0;i<s.length-1;i++)
      document.getElementById(s[i]).onchange=new Function("change("+(i+1)+")");
     change(0);
    }
    //-->
    < /script>
    < /head>
    < body  onload="setup()">
    < form name="frm">
    < select id="s1"><option>省</option></select>
    < select id="s2"><option>市</option></select>
    < /form>
    < /body>
    < /html>

唯爱多啦梦cQb8a
2010-11-19 · TA获得超过639个赞
知道小有建树答主
回答量:746
采纳率:0%
帮助的人:533万
展开全部
你这个是静态的还是从数据库查的?
如果是静态的 网上很多例子, 把数据写到两个js数组里就可以了
如果是动态的,一般用的是Ajax来做,如果你觉得这个比较难,那么我给你个简单的思路
就是当我选择第一个下拉菜单的时候,触发onchange事件 提交表单,把选择的value提交到servlet
然后通过这个value把第二个下拉菜单要显示的内容查出来,再传到这个页面上显示
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bbinlxyf715
2010-11-19 · TA获得超过5781个赞
知道小有建树答主
回答量:362
采纳率:100%
帮助的人:336万
展开全部
静态的非常简单,用javascript写个onchnage()事件就搞定了。

祝好运!---------^-^臭即是香^-^!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
redstarr
2010-11-19
知道答主
回答量:10
采纳率:0%
帮助的人:23.4万
展开全部
数据写到两个js数组里就可以
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式