1、先生成省市区表格

2、建立实体类

3、在html画出下拉框

<select id="province">
<option value="" id="">请选择省</option>
</select>
<select id="city">
<option value="" id="">请选择市</option>
</select>
<select id="area">
<option value="" id="">请选择区</option>
</select>

4、写js方法实现下拉框联动

<script type="text/javascript">

//加载页面完成后执行的方法
$(function(){
$.ajax({
type:'GET',

//数据查询路径
url:'area.do?flag=province',
async:true,
dataType:'json',
success:function(json,status,xhr){

//调用showProvincejq方法
showProvincejq(json);
}
});

$("#province").change(function(){
var value=$("#province").val();
$.ajax({
url:'area.do?flag=city',
data:{value:value},
async:true,
type:'get',
datatype:'json',
success:function(json,status,xhr){
showCityjq(json);
}
});
});

$("#city").change(function(){
var value=$("#city").val();
$.ajax({
url:'area.do?flag=area',
data:{value:value},
async:true,
type:'get',
datatype:'json',
success:function(json,status,xhr){
showAreajq(json);
}
});
});
});

function showAreajq(json){
//json字符串转化成json对象
var json=eval(json);
//以表单形式打印显示
console.table(json);
//清空第一行之后的下拉框
$("#area option:gt(0)").remove();
$.each(json, function(index, e){
var option=$('<option/>').val(e.code).text(e.name);
$("#area").append(option);
});
}

function showCityjq(json){
//json字符串转化成json对象
var json=eval(json);
//以表单形式打印显示
console.table(json);
//清空第一行之后的下拉框
$("#city option:gt(0)").remove();
$.each(json, function(index, e){
var option=$('<option/>').val(e.code).text(e.name);
$("#city").append(option);
});
}

function showProvincejq(json){
$.each(json,function(index,e){
var option=$('<option/>').val(e.code).text(e.name);
$("#province").append(option);
});
}

</script>

5、写控制层方法

@RequestMapping(value = "area.do",params = "flag=province")
//String视图解析器
public @ResponseBody List<Province> selectAll(ModelMap mp,Model model,HttpSession session,HttpServletRequest request) {
List<Province> list=provinceMapper.showProvince();
return list;
}
@RequestMapping(value = "area.do",params = "flag=city")
//String视图解析器
public @ResponseBody List<City> city(String value,ModelMap mp,Model model,HttpSession session,HttpServletRequest request) {
List<City> list=cityMapper.showCity(value);
return list;
}
@RequestMapping(value = "area.do",params = "flag=area")
//String视图解析器
public @ResponseBody List<Area> area(String value,ModelMap mp,Model model,HttpSession session,HttpServletRequest request) {
List<Area> list=areaMapper.showArea(value);
return list;
}

6、写dao层方法

<!-- 查询 如区域-->
<select id="showArea" resultMap="BaseResultMap" >
SELECT
<include refid="Base_Column_List" />
from area where citycode= #{citycode,jdbcType=VARCHAR}
</select>

SSM框架,在Html界面利用ajax,json,jQuery实现省市区下拉框联动的更多相关文章

  1. ajax技术实现登录判断用户名是否重复以及利用xml实现二级下拉框联动,还有从数据库中获得

    今天学了ajax技术,特地在此写下来作为复习. 一.什么是ajax? 客户端(特指PC浏览器)与服务器,可以在[不必刷新整个浏览器]的情况下,与服务器进行异步通讯的技术  即,AJAX是一个[局部刷新 ...

  2. jQuery Ajax MVC 下拉框联动

    无刷新下拉框联动方法: Controllers代码 public JsonResult DH_Change(string DH_ID) { List<SelectListItem> Tea ...

  3. Ajax jQuery下拉框联动案例

    需求: 使用ajax和jQuery实现下拉框联动. 注意:需要加入jquery-2.1.1.min.js 前台 <!DOCTYPE html> <html> <head& ...

  4. C# 利用反射将枚举绑定到下拉框

    前言:反射(Reflection)是.NET提供给开发者的一个强大工具,尽管作为.NET框架的使用者,很多时候不会用到反射.但在一些情况下,尤其是在开发一些基础框架或公共类库时,使用反射会使系统架构更 ...

  5. Jquery+json绑定带层次下拉框(select控件)

    一.实现的效果图 备注: 1.主要实现添加类别绑定到Ztree树之后,select下拉框在不刷新页面的情况下,通过Jquery重新绑定问题,增加用户体验度: 2.这个只是实现两层的绑定,通过sql语句 ...

  6. getJSON获取JSON文件加载下拉框及动态验证比输入项

    1.html界面 <form action="" method="get"> <div class="form-group" ...

  7. AJAX下拉框联动

    function getProvince() { var ProName = $("#dvProv").val(); LoadProvince(ProName); } functi ...

  8. ajax版本带搜索的下拉框

    demo地址:https://github.com/aa1356889/MyAjaxSelectSearch

  9. Jquery学习笔记:利用jquery获取select下拉框的值

    jquery不是特别熟练,每次使用不常用的就要百度,特地记录下来. 我的下拉框是: <div class="form-group"> <select class= ...

随机推荐

  1. Java IO学习笔记二:DirectByteBuffer与HeapByteBuffer

    作者:Grey 原文地址:Java IO学习笔记二:DirectByteBuffer与HeapByteBuffer ByteBuffer.allocate()与ByteBuffer.allocateD ...

  2. 树莓派写入openwrt作为路由器

    需要:树莓派4B,SD卡一张,SD卡读卡器一枚,openwrt镜像一份. 环境: Linux(deepin 20). 将SD卡插入读卡器,读卡器再插入电脑. 首先查看SD卡: sudo fdisk - ...

  3. Spring Boot WebFlux-06——WebFlux 整合 Redis

    第06课:WebFlux 整合 Redis 前言 上一篇内容讲了如何整合 MongoDB,这里继续讲如何操作 Redis 这个数据源,那什么是 Reids? Redis 是一个高性能的 key-val ...

  4. 《Docker基础与实战,看这一篇就够了》

    什么是Docker? Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 AUFS 类的 Union FS 等技术 ...

  5. Linux shell是什么

    shell概念: shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用shell启动,挂起,停止甚至编写一些程序. shell还是一个功能强 ...

  6. WEB安全漏洞扫描与处理(上)——安全漏洞扫描工具AppScan的安装使用

    很多公司对软件会有安全的要求,一般测试公司会使用安全漏洞扫描工具对软件进行漏扫,然后给出安全报告,然后软件开发人员会根据提供的安全报告进行漏洞的处理.我们接触到的测评公司,使用的是漏洞扫描工具AppS ...

  7. Html中的canvas

    使用cancas完成袋鼠跳跃的界面,这个是怎么做得呀,我哭了呀

  8. Java并发之Semaphore源码解析(一)

    Semaphore 前情提要:在学习本章前,需要先了解笔者先前讲解过的ReentrantLock源码解析,ReentrantLock源码解析里介绍的方法有很多是本章的铺垫.下面,我们进入本章正题Sem ...

  9. 在Linux/Unix系统下用iconv命令处理文本文件中文乱码问题

    iconv命令是运行于linux/unix平台的文件编码装换工具.当我们在linux/unix系统shell查看文本文件时,常常会发现文件的中文是乱码的,这是由于文本文件的编码与当前操作系统设置的编码 ...

  10. CentOS8安装GNOME3桌面并设置开机启动图形界面

    本篇文章介绍如何在CentOS8 Linux操作系统中安装GNOME3桌面环境和GDM(GNOME Display Manager)现实环境管理器. 环境 CentOS8 Minimal 安装GNOM ...