继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Ajax二级(多级)联动实现原理分析

青春有我
关注TA
已关注
手记 1072
粉丝 205
获赞 1007

webp

二级联动效果

开发中经常会遇到一些二级联动甚至多级联动,一二级菜单,省市县,公司团队部门等等

实现思路

一级菜单

就是个多option 的select下拉框,option可以来自页面自定义或则数据库

二级菜单

当一级菜单选中后,去查询数据库,查询到对应的二级菜单的内容,使用apend()添加到二级菜单的位置,一二级菜单就实现了联动,下面以部门和部门人员的联动为例介绍下

实际实现

onchange="showDept(this.value)"

一级菜单选择改变触发请求

        function showDept(obj)  
        {  
            var dept = obj;           
            $.ajax({  
                type: "post",    
                url: "erji.jsp",    
                data: "dept="+dept,  
                async: false,  
                success: function(data){ 
                    $("#xingming option").remove()                    var result=data.split("#");                    for(var i=0;i<result.length;i++){
                        $("#xingming").append(result[i]);  
                    }
                }     
            });

前端请求到后端,后端请求数据库二级菜单的内容,并返回给页面显示

        String te = request.getParameter("dept");        String s = "select id,realname from user where dept = '" + te + "'";
        Statement stmt = db.getConnection().createStatement();
        rs = stmt.executeQuery(s);        String temp = "<option>请选择</option>#";        while (rs.next()) {
            temp = temp + "<option value=" + rs.getString("id") + ">" + rs.getString("realname") + "</option>#";
        }
        out.println(temp);

思考



作者:Eugene1024
链接:https://www.jianshu.com/p/9dd6d788edb7


打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP