Jquery的ajax 三级联动 03
今天给大家上一下代码吧
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相关推荐
- jquery省市县三级联动
Jquery省市县三级联动,数据来源js,无需调用接口 可前往本人发布资源<Jquery省市县三级>免积分下载 目录 效果 html部分 <!DOCTYPE html> < ...
- jquery实现省市区三级联动
jquery实现省市区三级联动 最近项目需要用到关于省市区三级联动下拉选择的功能,于是乎网上搜了一些做法,觉得有一些只是给出了小的案例,却很难找到详细的省.市.区的具体数据(其实,用baidu搜索就是 ...
- 二级联动菜单ajax刷新,jquery json ajax 二级联动菜单实例
本文实例讲述了jquery json ajax 二级联动菜单.分享给码农们参考,具体如下: 后台Handler.ashx using System; using System.Web; using S ...
- ajax三级联动+全国最新省市县数据
写个Ajax三级联动实例,用的最新的全国省市县mysql数据.这里只说一下思路,具体请看源码. 首先看index.php,这是一个省份列表 <?php $conn=mysql_connect ...
- jquery省地市三级联动
需要核心文件jquery.cityselect.js,通过ajax访问获取省地市数据文件 /*Ajax 三级省市联动http://code.ciaoca.cn/日期:2012-7-18settings ...
- ThinkPHP+AJAX三级联动
sanji.html <!doctype html> <html lang="en"> <head><meta charset=" ...
- jquery实现的三级联动地区 jquery插件
(function($){function Dsy(){this.Items = {};}Dsy.prototype.add = function(id,iArray){this.Items[id] ...
- jquery xml 省市区三级联动
html部分 <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF ...
- 三级联动数据库添加html,前端jQuery最新省市区三级联动插件,包含sql数据库
一.目录结构 二.功能演示 1)用浏览器打开,index.html 2)单击,输入框, 3)选择省份 4).选择城市 5).选择区县 6).显示已选中的名称和ID 三.前端页面html> 地区数 ...
最新文章
- python和R对dataframe的常用操作的差异:head、tail、shape、dim、nrow、ncol、descirbe、summary、str
- iOS开发 - 事件传递响应链
- CXF配置,ant文件说明及运行,运行cxf中带的项目
- 【Clickhouse】Clickhouse 外部存储引擎之 hdfs
- 移动路由器刷linux,Linux小课堂开课了(7)-三线IP刷路由-移动-联通-电信
- jeecg3.5的一个bug
- PHP 统计一个字符串,在另一个字符串中出现次数
- 语音识别竞品分析报告
- 三个水桶等分8升水的问题
- 装饰器设计模式(模拟咖啡)
- Java提取成对括号内容 支持扩展多种括号
- 交互设计师眼中的需求分析
- 寒江独钓:Windows内核安全编程(china-pub到货首发)
- SU插件情报局 | Laubwerk智能代理植物插件(附插件获取)
- 企业公众号都离不开的四种运营模式
- DNA sequence HDU 1560
- Opencv之图像矩(晦涩难懂,用到再看吧)
- 区块链Fabric 技术架构和交易流程
- 破解利器C32Asm和IDApro
- 解决问题:CA_ERROR证书出错,请登录微信支付商户平台下载证书-企业付款到零钱接口(原创)
热门文章
- linux vbox安装mac os,超简单的linux下virtualbox4.3.26安装配置黑苹果 OSX 10.9的办法
- python调用函数获取最开始的异常_Python使用sys.exc_info()方法获取异常信息
- 电脑显示器闪屏_网课抗“疫”,有一台护眼显示器更省心
- mysql5.7.11无法启动_MySQL5.7.11免安装版的安装和配置:解决MYSQL 服务无法启动问题...
- optional 解决空指针_Java8新特性:Optional类的正确使用姿势
- 复盘所有NLP比赛的TOP方案,专注NLP
- 今日头条下拉词框怎么做的呢?怎么优化推广呢?
- linux socket句柄泄露,socket句柄泄漏问题的定位: losf和strace的联合使用!
- java如何新建一个空的压缩包_如何在Java中创建zip文件
- python牛顿法求方程的根_Python 求多重根的方法