省份,城市,地区的三级联动

这里只介绍页面的代码和控制层代码

<script type="text/javascript">
$(function(){
 $.post(
  "toadd2",
  {},
  function(obj){
   var minzus = obj.minzus;
   var citys = obj.citys;
   
   for(var i in minzus){
    $("[name='mid']").append("<option value='"+minzus[i].mid+"'>"+minzus[i].mname+"</option>");
   }
   for(var i in citys){
    $("[name='sheng_id']").append("<option value='"+citys[i].id+"'>"+citys[i].name+"</option>");
   }
  },
  "json"
 );
})

function sheng(id){
 $.post(
  "citys", 
  {id:id},
  function(obj){
   $("[name='shi_id']").empty();//每次追加清空
   //追加一条请选择
   $("[name='shi_id']").append("<option value=''>请选择</option>");
   $("[name='qu_id']").empty();//每次追加清空
   //追加一条请选择
   $("[name='qu_id']").append("<option value=''>请选择</option>");
   for(var i in obj){
    $("[name='shi_id']").append("<option value='"+obj[i].id+"'>"+obj[i].name+"</option>");
   } 
  },
  "json"
 );
}


function shi(id){
 $.post(
  "citys", 
  {id:id},
  function(obj){
   $("[name='qu_id']").empty();//每次追加清空
   //追加一条请选择
   $("[name='qu_id']").append("<option value=''>请选择</option>");
   for(var i in obj){
    $("[name='qu_id']").append("<option value='"+obj[i].id+"'>"+obj[i].name+"</option>");
   } 
  },
  "json"
 );
}
</script>

<body>
<marquee>欢迎来到新增页面</marquee>
<center>
<form>
姓名:<input type="text" name="sname"><br>
性别:<input type="text" name="sex"><br>
地址:<input type="text" name="addr"><br>
名族:<select name="mid">
    <option value="">请选择</option>
    </select><br>
省:<select name="sheng_id" onchange="sheng(this.value)">
    <option value="">请选择</option>
    </select><br>
市:<select name="shi_id" onchange="shi(this.value)">
    <option value="">请选择</option>
    </select><br>
区:<select name="qu_id">
    <option value="">请选择</option>
    </select><br>
<input type="button" value="提交"><br>
</form>
</center>
</body>

控制层代码

 @RequestMapping("/toadd2")
  @ResponseBody
  public Object toadd2() {
   //查询两个部分 民族和省份
   List<Minzu> minzus = ss.getMinzu();
   int id=1;
   List<City> citys = ss.getCity(id);
   Map<String,Object> map = new HashMap();
   map.put("minzus", minzus);
   map.put("citys", citys);
   return map;
  }


 @RequestMapping("/citys")
  @ResponseBody
  public Object citys(int id) {
   List<City> citys = ss.getCity(id);
   return citys;
  }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
之前从网上找的三级联动都太老了,数据也都是很久之前的数据,所以自己把从国家统计局扒下来的省市县三级联动数据做了整理,目前最新的三级联动,童叟无欺。大家看北京市和天津市的几个分区就知道是最新的了。 INSERT INTO `address` VALUES (1, '110000', 0, '北京市', 1); INSERT INTO `address` VALUES (2, '110100', 110000, '市辖区', 2); INSERT INTO `address` VALUES (3, '110101', 110100, '东城区', 3); INSERT INTO `address` VALUES (4, '110102', 110100, '西城区', 3); INSERT INTO `address` VALUES (5, '110105', 110100, '朝阳区', 3); INSERT INTO `address` VALUES (6, '110106', 110100, '丰台区', 3); INSERT INTO `address` VALUES (7, '110107', 110100, '石景山区', 3); INSERT INTO `address` VALUES (8, '110108', 110100, '海淀区', 3); INSERT INTO `address` VALUES (9, '110109', 110100, '门头沟区', 3); INSERT INTO `address` VALUES (10, '110111', 110100, '房山区', 3); INSERT INTO `address` VALUES (11, '110112', 110100, '通州区', 3); INSERT INTO `address` VALUES (12, '110113', 110100, '顺义区', 3); INSERT INTO `address` VALUES (13, '110114', 110100, '昌平区', 3); INSERT INTO `address` VALUES (14, '110115', 110100, '大兴区', 3); INSERT INTO `address` VALUES (15, '110116', 110100, '怀柔区', 3); INSERT INTO `address` VALUES (16, '110117', 110100, '平谷区', 3); INSERT INTO `address` VALUES (17, '110118', 110100, '密云区', 3); INSERT INTO `address` VALUES (18, '110119', 110100, '延庆区', 3); INSERT INTO `address` VALUES (19, '120000', 0, '天津市', 1); INSERT INTO `address` VALUES (20, '120100', 120000, '市辖区', 2); INSERT INTO `address` VALUES (21, '120101', 120100, '和平区', 3); INSERT INTO `address` VALUES (22, '120102', 120100, '河东区', 3); INSERT INTO `address` VALUES (23, '120103', 120100, '河西区', 3); INSERT INTO `address` VALUES (24, '120104', 120100, '南开区', 3); INSERT INTO `address` VALUES (25, '120105', 120100, '河北区', 3); INSERT INTO `address` VALUES (26, '120106', 120100, '红桥区', 3); INSERT INTO `address` VALUES (27, '120110', 120100, '东丽区', 3); INSERT INTO `address` VALUES (28, '120111', 120100, '西青区', 3); INSERT INTO `address` VALUES (29, '120112', 120100, '津南区', 3); INSERT INTO `address` VALUES (30, '120113', 120100, '北辰区', 3); INSERT INTO `address` VALUES (31, '120114', 120100, '武清区', 3); INSERT INTO `address` VALUES (32, '120115', 120100, '宝坻区', 3); INSERT INTO `address` VALUES (33, '120116', 120100, '滨海新区', 3); INSERT INTO `address` VALUES (34, '120117', 120100, '宁河区', 3); INSERT INTO `address` VALUES (35, '120118', 120100, '静海区', 3); INSERT INTO `address` VALUES (36, '120119', 120100, '蓟州区', 3);

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值