博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java下拉列表联动的实现(从数据库读取数据)
阅读量:7178 次
发布时间:2019-06-29

本文共 1743 字,大约阅读时间需要 5 分钟。

很多时候在界面布局时我们会用到下拉列表,单独的一个列表与数据库的交互很简单,今天要记录的是当有多个下拉列表联动时,该怎样获取数据,即选择第一个下拉列表的值,动态的改变第二个下拉列表乃至更多列表的值。

1、在jsp中定义第一个下拉列表,并且从servlet中获取list列表读取出option的value(此处关于EL表达式以及c标签的使用不在赘述)

 

 

 

2、定义第二个下拉列表(这个下拉列表的option需要依赖第一个下拉列表的改变而改变)

 

3、下拉列表的onchange()事件调用该方法(此方法中接收servlet传入的json数据,需导入json包在lib下)

function getShoppe() {
//如果第一个下拉列表的值改变则调用此方法 var code = $("#bra option:selected").attr("id");//得到第一个下拉列表的值 if(code!=null && "" != code&& -1 != code){ //通过ajax传入后台,把orderTypeName数据传到后端 $.post("GetShoppeServlet",{code:code},function(data){ var res = $.parseJSON(data);//把后台传回的json数据解析 var option; option="" ; $.each(res,function(i,n){
//循环,i为下标从0开始,n为集合中对应的第i个对象 option += "" }); $("#shoppe").html(option);//将循环拼接的字符串插入第二个下拉列表 $("#shoppe").show();//把第二个下拉列表展示 }); }else { $("#shoppe").hide(); } }

4、新建一个和方法中同名的servlet,根据数据库读出的数据,返回一个json对象

 

HttpSession session=request.getSession();                int code=Integer.parseInt(request.getParameter("code"));        System.out.println(code);        List
shoppelist=scanfDao.getScanfShoppe(code); session.setAttribute("shoppelist", shoppelist); List
l=(List
)session.getAttribute("shoppelist"); //System.out.print(l.get(0).getName()); out.print(JSON.toJSONString(l));

总的来说,我们要在页面中异步的实现两个甚至多个select的联动,需要在servlet中返回一个json的对象,然后返回给js进行解析后赋值给option

 

转载于:https://www.cnblogs.com/oshoh/p/11050701.html

你可能感兴趣的文章
美南方电力解围东芝西屋困局 计提损失将减一半生 “蝴蝶效应”
查看>>
自然语言处理顶级会议 EMNLP 最佳论文出炉,聚焦神经网络 (下载)
查看>>
视频矩阵的十二种特性是什么
查看>>
智能电网易遭受网络攻击的症结在哪里?
查看>>
微软推视频分析服务 片中人什么心情都知道
查看>>
Windows 10年度更新将启用Hotspot 2.0功能
查看>>
雾计算是炒作吗?
查看>>
IT企业开始为NFV热身
查看>>
Win10或成全球最大操作系统
查看>>
智能城市包罗万象 “独干”成不了气候
查看>>
乌云和漏洞盒子停业整顿:白帽子被抓是导火索?
查看>>
奇虎360将于7月18日从纽约证交所摘牌
查看>>
传软银同意以234亿英镑收购英国芯片设计厂商ARM
查看>>
防爆摄像机应用特殊 从技术入手谋发展
查看>>
去年全球钓鱼攻击达历史最高水平
查看>>
GitHub增加了代码审查、项目管理等新功能
查看>>
深圳成为乌拉圭智慧城市解决方案输出地
查看>>
直播热潮之下的图片社交洼地
查看>>
多地部署高考安防措施 严防在校大学生替考
查看>>
两周过去了,“想哭”勒索蠕虫近来可好?
查看>>