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. OO unit4 summary

    Unit4 一.第四单元作业的架构设计 第四单元个人认为主要是考察对于层次结构的理解,即如何理解并处理好UML图的树状结构组织,在理好层次之间以及层次内部的相互关系之后,就只剩下代码实现的问题了.但是 ...

  2. 聊聊 Feign 的实现原理

    What is Feign? Feign 是⼀个 HTTP 请求的轻量级客户端框架.通过 接口 + 注解的方式发起 HTTP 请求调用,面向接口编程,而不是像 Java 中通过封装 HTTP 请求报文 ...

  3. [.NET Core知识点回顾]-自动内存管理

    自动内存管理是公共语言运行时在托管执行过程中提供的服务之一.公共语言运行时的垃圾回收器为应用程序管理内存 的分配和释放.对开发人员而言,在开发托管应用程序时不必编写执行内存管理任务代码. 分配内存 初 ...

  4. 玩转STM32MP157- 在应用层中使用 fbtft

    fbtft使用的是framebuffer框架,这种框架将显示设备抽象为帧缓冲区,对framebuffer设备(/dev/fbx(0.1.2..))进行相关操作可以反应到LCD上. 现在尝试下在用户空间 ...

  5. 『动善时』JMeter基础 — 50、使用JMeter测试WebSocket接口

    目录 1.什么是WebSocket接口 2.为什么需要WebSocket 3.测试WebService接口前的准备 4.WebSocket Sampler组件界面详解 5.使用JMeter测试WebS ...

  6. SpringBoot Cache 入门

    首先搭载开发环境,不会的可以参考笔者之前的文章SpringBoot入门 添加依赖 <dependency> <groupId>org.springframework.boot& ...

  7. 想用Electron做个小工具?这个或许是终极版

    故事背景 之前在网上有看到很多小伙伴基于 electron 实现了非常多好用的桌面端工具,比如图床管理工具 PicGo,就专门做图床工具.也有一些其他的类似的小工具,比如 saladict-deskt ...

  8. robotframework安装robotframework-requests库遇到的几种问题

    robotframework-requests库依赖于requests库,所以如果安装robotframework-requests库后,在RF中的RequestsLibrary不能使用或者使用pyt ...

  9. WPF教程十二:了解自定义控件的基础和自定义无外观控件

    这一篇本来想先写风格主题,主题切换.自定义配套的样式.但是最近加班.搬家.新租的房子打扫卫生,我家宝宝6月中旬要出生协调各种的事情,导致了最近精神状态不是很好,又没有看到我比较喜欢的主题风格去模仿的, ...

  10. ESP32引脚参考(转)

    ES​P32芯片配有48个具有多种功能的引脚.并非所有的引脚都暴露在所有的ESP32开发板中,有些引脚不能使用. 关于如何使用ESP32 GPIO有很多问题.你应该用什么pin?在项目中应该避免使用哪 ...