今天给大家上一下代码吧
jsp界面

开头引用自己写的js文件路径,注意引用顺序
js界面的代码大概思想我给你们捋一下:
首先进入Ajax,中的url 根据路径找到对应的servelet的后台处理方法,往下走,返回一个回调函数,date,这个date可以自己随便给,将得到省的id,将其加入option。
如果省的id,变动了,则根据省的id当作市的父id,进行查询就进行市的加入option
县区也是一样的

$(function(){var ctx=$("#ctx").val();$.ajax({url:ctx+"/regionServlet",success:function(data){for(index in data){console.log(data[index]);$("#province").append("<option value='"+data[index].ID+"'>"+data[index].REGION_NAME+"</option>");//将省进行添加}},dataType:"json"});$("#province").change(function(){$("option:gt(0)","#city").remove();$("option:gt(0)","#county").remove();$.ajax({url:ctx+"/regionServlet?ID="+this.value,success:function(data){for(index in data){console.log(data[index]);$("#city").append("<option value='"+data[index].ID+"'>"+data[index].REGION_NAME+"</option>");}},dataType:"json"});});$("#city").change(function(){$("option:gt(0)","#county").remove();$.ajax({url:ctx+"/regionServlet?ID="+this.value,success:function(data){for(index in data){console.log(data[index]);$("#county").append("<option value='"+data[index].PARENT_ID+"'>"+data[index].REGION_NAME+"</option>");}},dataType:"json"});});})

再给大家看一下后台 的一个查询共用方法 jsonBaseDao

public class JsonBaseDao extends BaseDao<Map<String, Object>>{public List<Map<String, Object>> executeQuery(String sql, PageBean pageBean)throws SQLException, InstantiationException, IllegalAccessException {return super.executeQuery(sql, pageBean, new callBack<Map<String, Object>>() {@Overridepublic List<Map<String, Object>> foreach(ResultSet rs) throws SQLException, InstantiationException, IllegalAccessException {// TODO Auto-generated method stub// 1.利用反射 创建一个实例// 2.获取所有属性,并且赋值给实例// 3.将添加完值的实体类装入list容器中List<Map<String, Object>> list = new ArrayList<>();//获取源数据ResultSetMetaData md = rs.getMetaData();//获取列数int columnCount = md.getColumnCount();Map<String, Object> map=null;while(rs.next()) {map=new HashMap<>();for (int i = 1; i < columnCount; i++) {map.put(md.getColumnName(i), rs.getObject(i));}list.add(map);}return list;}});}}

这个dao层方法,继承上面的JsonBaseDao

public List<Map<String, Object>> listR(Map<String, String[]> paraMap,PageBean pageBean) throws InstantiationException, IllegalAccessException, SQLException{String id=JsonUtil.getParamMap(paraMap, "ID");String sql="select * from ch_region where true ";if (StringUtils.isBlank(id)) {sql+="and PARENT_ID=7459";}else {sql+="and PARENT_ID="+id;}return super.executeQuery(sql, null);}}

下面的这个是servelet 调用上面的dao层

public class RegionServlet extends HttpServlet{private RegionDao rdao=new RegionDao();@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doPost(req, resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {try {List<Map<String, Object>> list = rdao.listR(req.getParameterMap(), null);ObjectMapper om=new ObjectMapper();ResponseUtil.write(resp, om.writeValueAsString(list));} catch (InstantiationException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IllegalAccessException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}
}

写出最终的效果还需要一些架包,和其他的方法
我都截图如下



我不知道怎么上传这些架包,等我会了,就上传给你们
好了

Jquery的ajax 三级联动 03相关推荐

  1. jquery省市县三级联动

    Jquery省市县三级联动,数据来源js,无需调用接口 可前往本人发布资源<Jquery省市县三级>免积分下载 目录 效果 html部分 <!DOCTYPE html> < ...

  2. jquery实现省市区三级联动

    jquery实现省市区三级联动 最近项目需要用到关于省市区三级联动下拉选择的功能,于是乎网上搜了一些做法,觉得有一些只是给出了小的案例,却很难找到详细的省.市.区的具体数据(其实,用baidu搜索就是 ...

  3. 二级联动菜单ajax刷新,jquery json ajax 二级联动菜单实例

    本文实例讲述了jquery json ajax 二级联动菜单.分享给码农们参考,具体如下: 后台Handler.ashx using System; using System.Web; using S ...

  4. ajax三级联动+全国最新省市县数据

    写个Ajax三级联动实例,用的最新的全国省市县mysql数据.这里只说一下思路,具体请看源码. 首先看index.php,这是一个省份列表 <?php   $conn=mysql_connect ...

  5. jquery省地市三级联动

    需要核心文件jquery.cityselect.js,通过ajax访问获取省地市数据文件 /*Ajax 三级省市联动http://code.ciaoca.cn/日期:2012-7-18settings ...

  6. ThinkPHP+AJAX三级联动

    sanji.html <!doctype html> <html lang="en"> <head><meta charset=" ...

  7. jquery实现的三级联动地区 jquery插件

    (function($){function Dsy(){this.Items = {};}Dsy.prototype.add = function(id,iArray){this.Items[id] ...

  8. jquery xml 省市区三级联动

    html部分 <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF ...

  9. 三级联动数据库添加html,前端jQuery最新省市区三级联动插件,包含sql数据库

    一.目录结构 二.功能演示 1)用浏览器打开,index.html 2)单击,输入框, 3)选择省份 4).选择城市 5).选择区县 6).显示已选中的名称和ID 三.前端页面html> 地区数 ...

最新文章

  1. python和R对dataframe的常用操作的差异:head、tail、shape、dim、nrow、ncol、descirbe、summary、str
  2. iOS开发 - 事件传递响应链
  3. CXF配置,ant文件说明及运行,运行cxf中带的项目
  4. 【Clickhouse】Clickhouse 外部存储引擎之 hdfs
  5. 移动路由器刷linux,Linux小课堂开课了(7)-三线IP刷路由-移动-联通-电信
  6. jeecg3.5的一个bug
  7. PHP 统计一个字符串,在另一个字符串中出现次数
  8. 语音识别竞品分析报告
  9. 三个水桶等分8升水的问题
  10. 装饰器设计模式(模拟咖啡)
  11. Java提取成对括号内容 支持扩展多种括号
  12. 交互设计师眼中的需求分析
  13. 寒江独钓:Windows内核安全编程(china-pub到货首发)
  14. SU插件情报局 | Laubwerk智能代理植物插件(附插件获取)
  15. 企业公众号都离不开的四种运营模式
  16. DNA sequence HDU 1560
  17. Opencv之图像矩(晦涩难懂,用到再看吧)
  18. 区块链Fabric 技术架构和交易流程
  19. 破解利器C32Asm和IDApro
  20. 解决问题:CA_ERROR证书出错,请登录微信支付商户平台下载证书-企业付款到零钱接口(原创)

热门文章

  1. linux vbox安装mac os,超简单的linux下virtualbox4.3.26安装配置黑苹果 OSX 10.9的办法
  2. python调用函数获取最开始的异常_Python使用sys.exc_info()方法获取异常信息
  3. 电脑显示器闪屏_网课抗“疫”,有一台护眼显示器更省心
  4. mysql5.7.11无法启动_MySQL5.7.11免安装版的安装和配置:解决MYSQL 服务无法启动问题...
  5. optional 解决空指针_Java8新特性:Optional类的正确使用姿势
  6. 复盘所有NLP比赛的TOP方案,专注NLP
  7. 今日头条下拉词框怎么做的呢?怎么优化推广呢?
  8. linux socket句柄泄露,socket句柄泄漏问题的定位: losf和strace的联合使用!
  9. java如何新建一个空的压缩包_如何在Java中创建zip文件
  10. python牛顿法求方程的根_Python 求多重根的方法