java jsp js 实现地区表 三级联动,并修改时数据回显
2014-06-20 15:37
661 查看
js:方法
//下一级 function areaNext(id){ if($("#area"+id).val() == 0){ document.getElementById("area1"+id).options[0].selected=true; document.getElementById("area2"+id).options[0].selected=true; document.getElementById("area1"+id).length=1; document.getElementById("area2"+id).length=1; }else{ $.ajax({ type: 'post', url: "/LovePatPrint/web/member!getCity?ProvinceId=" + $("#area"+id).val(), success: function(text) { $("#area1"+id).html(text); document.getElementById("area1"+id).options[1].selected=true; $.ajax({ type: 'post', url: "/LovePatPrint/web/member!getDistrict?cityId=" + $("#area1"+id).val(), success:function(text){ $("#area2"+id).html(text); document.getElementById("area2"+id).options[1].selected=true; }, error: function(xx) { alert("网络异常"); } }); }, error: function(xx) { alert("网络异常"); } }); } } //三级 function threeNext(id){ if($("#area1"+id).val() == 0){ document.getElementById("area2"+id).options[0].selected=true; document.getElementById("area2"+id).length=1; }else{ $.ajax({ type: 'post', url: "/LovePatPrint/web/member!getDistrict?cityId=" + $("#area1"+id).val(), success: function(text) { $("#area2"+id).html(text); document.getElementById("area2"+id).options[1].selected=true; }, error: function(xx) { alert("网络异常"); } }); } }
jsp:方法
<pre name="code" class="html"><select id="area11" name="area11" onchange="areaNext(11);"> <option value="0">--请选择--</option> <s:iterator value="areaList" var="al"> <option value="<s:property value="#al.countryAreaId"/>"><s:property value="#al.areaName"/></option> </s:iterator> </select> <script> document.getElementById("area11").value = ${one }; </script> <select id="area111" name="area111" onchange="threeNext(11);"> <option value="0">--请选择--</option> <s:iterator value="areaList2" var="al"> <option value="<s:property value="#al.countryAreaId"/>"><s:property value="#al.areaName"/></option> </s:iterator> </select> <script> document.getElementById("area111").value = ${two } </script> <select id="area211" name="area211"> <option value="0">--请选择--</option> <s:iterator value="areaList3" var="al"> <option value="<s:property value="#al.countryAreaId"/>"><s:property value="#al.areaName"/></option> </s:iterator> </select> <script> document.getElementById("area211").value = ${three } <span style="font-family: Arial, Helvetica, sans-serif;"></script></span>
java:代码实现
/** * 地域级别验证 * @author lmc * @time 2014-6-20 13:17:04 */ public void levelCheck(int id){ String areaHql="from Area where countryAreaId="+id; areaPojo=areaService.getArea(areaHql); if(areaPojo.getParentId() == 0){ //顶级ID String hql=" select * from area where parent_id=0"; areaList = areaService.getAreaList(hql); one = areaPojo.getCountryAreaId(); }else{ //判断是三级或是二级 String hql="from Area where countryAreaId="+areaPojo.getParentId(); areaPojo2 = areaService.getArea(hql); if(areaPojo2.getParentId() == 0){ //二级ID //顶级集合 areaList = areaService.getAreaList("select * from area where parent_id=0"); one = areaPojo2.getCountryAreaId(); //二级集合 areaList2 = areaService.getAreaList("select * from area where parent_id="+one); two = areaPojo.getCountryAreaId(); }else{ //三级ID //顶级集合 areaList = areaService.getAreaList("select * from area where parent_id=0"); one = areaPojo2.getParentId(); //二级集合 areaList2 = areaService.getAreaList("select * from area where parent_id="+one); two = areaPojo.getParentId(); //三级集合 areaList3 = areaService.getAreaList("select * from area where parent_id="+two); three = id; } } }注:仅供参考,若更好的方法请分享。。。。
相关文章推荐
- 用js读取XML数据实现省市区的三级联动
- JS实现经典的中国地区三级联动下拉菜单功能实例【测试可用】
- js--纯js实现省市地区三级联动
- 用JS实现省市区三级联动 (数据从数据库查出)
- 用Ajax实现多级联动下拉列表For JSP(无限级别,JSON传输数据,含全国地区数据库
- 下拉菜单三级级联的效果实现(jsp、js、Java、mysql)
- JS实现省市地区三级联动
- 用js实现地区的三级联动
- Jquery实现城市三级数据联动的实例
- 中国地区三级联动代码(JS代码)
- 在一个jsp页面实现二级下拉框联动,实时读取数据库数据(用javascript实现)
- ASP.NET MVC + Jquery 实现Ajax下拉框数据三级联动
- JSON 数据,实现省市县三级联动下拉菜单
- ajax,jsp,java技术实现行政区划代码三级关联下拉框
- 实现jsp页面二级下拉框联动,实时读取数据库数据
- jsp+js二级、三级联动选择框(05年版)
- JQuery/JS实现的三级联动选择
- javaBean+JSP+JS+XML实现从发布文章中自动提取图片在首页轮换效果
- 三级地区无刷新实现菜单联动
- ASP+JS三级联动下拉菜单[调用数据库数据](转)