jquery json实现省市级级联
java后台程序:
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.tugou.bean.TBAreaBean;
import com.tugou.controller.BaseController;
import com.tugou.service.AreaService;
import com.tugou.util.StringUtil;
import net.sf.json.JSONObject;
/**
 * (省、市、区(县))维护Controller
 * @author zhangh
 *
 */
@Controller
@RequestMapping("/area")
public class AreaController extends BaseController{
private static final Logger logger = Logger.getLogger(AreaController.class);
@Autowired
	private AreaService<TBAreaBean> areaService;
/**
	 * 查询所有省、市、区
	 * @param request
	 * @return
	 */
	@RequestMapping(value = "queryAreaList", method={RequestMethod.GET,RequestMethod.POST},produces = "text/html;charset=UTF-8")
	@ResponseBody
	public String queryAreaList(HttpSession session,HttpServletRequest request){
		try{
			Map<String,Object> map = new HashMap<String,Object>();
			String id = request.getParameter("id");
			Integer iId = StringUtil.isNullOrBlank(id)?null:Integer.parseInt(id);
			map.put("id", iId);
			List<TBAreaBean> areatList = areaService.getAreaList(map);
JSONObject jsonObj = new JSONObject();
			jsonObj.put("areaList", areatList);
return jsonObj.toString();
		}catch(Exception e){
			e.printStackTrace();
			logger.error("程序错误:"+e.getMessage());
			return "0";
		}
	}
}
js程序:
$(function(){
		AreaList(1,0);
	$("#province_id").change(function(){
		var provinceId=$("#province_id option:selected").val();
		AreaList(2,provinceId);
		$("#city_id").show();
		$("#area_id").hide();
	})
	$("#city_id").change(function(){
		var cityId=$("#city_id option:selected").val();
		AreaList(3,cityId);
		$("#area_id").show();
})
})
/**
 * 获取所有的市级联动
 */
function allArea(type,id){
    $.ajax({
		type:"post",
		url:hostpath+'/area/queryAreaList.html',
		data:{'id':id},
		success:function(data){
			var json = eval("(" + data + ")");
			if(type==1){
				areaList(json,$("#province_id"));
			}else if(type==2){
				areaList(json,$("#city_id"));
			}else if(type==3){
				areaList(json,$("#area_id"));
			}
		}
	});
}
function areaList(json,$city){
	var province = "<option value=\"\">请选择</option>";
	$.each(json.areaList,function(idx,item){
		province += "<option value="+item.id+">"+item.name+"</option>";
	});
$city.html(province);
}
html页面:
<dl class="clearfix">
							<dt><span>选择所代理的地区:</span>*</dt>
							<dd>
								<select id="province_id">
									<option value="">请选择</option>
								</select>
								<select id="city_id" style="display: none;">
									<option value="">请选择</option>
								</select>
								<select id="area_id" style="display: none;">
									<option value="">请选择</option>
								</select>
							</dd>
							<dd class="warn"><span>不能为空</span></dd>
						</dl>
省市县sql脚本:http://files.cnblogs.com/files/flywang/tb_area.zip
jquery json实现省市级级联的更多相关文章
- jquery 的combobox 处理级联
		随笔---jquery 的combobox 处理级联 ------------------------html------------- <select id="groupId&quo ... 
- [C#]使用 C# 代码实现拓扑排序  dotNet Core WEB程序使用 Nginx反向代理  C#里面获得应用程序的当前路径  关于Nginx设置端口号,在Asp.net 获取不到的,解决办法  .Net程序员 初学Ubuntu ,配置Nignix  夜深了,写了个JQuery的省市区三级级联效果
		[C#]使用 C# 代码实现拓扑排序 目录 0.参考资料 1.介绍 2.原理 3.实现 4.深度优先搜索实现 回到顶部 0.参考资料 尊重他人的劳动成果,贴上参考的资料地址,本文仅作学习记录之用. ... 
- struts2 + jquery + json 简单的前后台信息交互
		ajax 是一种客户端与服务器端异步请求的交互技术.相比同步请求,大大提高了信息交互的速度和效率.是当下非常实用和流行的技术. 这里简单的说明 struts2 + jquery + json 下的 信 ... 
- Json 基于jQuery+JSON的省市联动效果
		helloweba.com 作者:月光光 时间:2012-09-12 21:57 标签: jQuery JSON Ajax 省市联动 省市区联动下拉效果在WEB中应用非常广泛,尤其在一些 ... 
- JQuery + JSON作为前后台数据交换格式实践
		JQuery + JSON作为前后台数据交换 JQuery提供良好的异步加载接口AJAX,可以局部更新页面数据, http://api.jquery.com/category/ajax/ JSON作为 ... 
- jQuery: jquery.json.js
		http://api.jquery.com/jQuery.parseJSON/ http://www.json.org/json-zh.html http://fineui.codeplex.com/ ... 
- struts2+jquery+json集成
		以下采用struts2+jquery+json模拟一个案例.当点击提交按钮时会把输入的数据提交到后台,然后从后台获取数据在客户端显示. 效果如下: 接下来为struts2+jquery+json集成步 ... 
- jQuery+JSON+jPlayer实现QQ空间音乐查询
		演示地址: http://bejson.com/demos/qqmusic/ 代码下载:http://www.jqdemo.com/932.html 查询QQ音乐是很早前就出来的一个接口. 这里使用j ... 
- echart+jquery+json统计TP数据
		由于工作需要,需要统计交易数据的TP50,TP90,TP95,TP99.采用的前端技术是jquery+json+echart. 一.TP定义(谷歌) Calculating TP is very si ... 
随机推荐
- XML的二十个热点问题
			这些日子,几乎每个人都在谈论XML (Extensible Markup Language),但是很少有人真正理解其含义.XML的推崇者认为它能够解决所有HTML不能解决的问题,让数据在不同的操作系统 ... 
- BZOJ1113:[POI2008]PLA
			浅谈栈:https://www.cnblogs.com/AKMer/p/10278222.html 题目传送门:https://lydsy.com/JudgeOnline/problem.php?id ... 
- CSS3  日常小结
			1. pointer-events:none; 2. flex 今天看到一个牛X的CSS3属性 flex, 称为弹性盒子. 这中属性完全可以替代媒体查询啦 使用方法: 父元素使用属性display ... 
- 杂项:BI(商业智能)
			ylbtech-杂项:BI(商业智能) 商业智能(BI,Business Intelligence). BI(Business Intelligence)即商务智能,它是一套完整的解决方案,用来将企业 ... 
- 一个有关Golang变量作用域的坑
			转自:http://tonybai.com/2015/01/13/a-hole-about-variable-scope-in-golang/ 临近下班前编写和调试一段Golang代码,但运行结果始终 ... 
- VBS调用并监控记事本进程
			Dim flag flag=true Set WshShell = CreateObject("WScript.Shell") '创建WScript.Shell对象 Set ... 
- 全面解析JS字符串和正则表达式中的match、replace、exec等函数
			转自:https://www.jb51.net/article/87730.htm 正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串.将 ... 
- ubunt14.04搭建lNMP
			一.安装mysql 1. sudo apt-get update 2. sudo apt-get install apt-get nginx 二.安装mysql 1. sudo apt-get ... 
- [原创]SQL表值函数:获取从当月计算起往前自定义月份数
			今天我现在发现看一篇博文不能够太长,只要能够描述清楚自己想表达的东西,能够让大家知道你要讲什么就行了.因为我今天看了一些长篇博文,真的觉得知识点太多了, 会让人囫囵吞枣. 这篇博文跟我昨天发表的类 ... 
- Spring入门第二十七课
			声明式事务 直接上代码: db.properties jdbc.user=root jdbc.password=logan123 jdbc.driverClass=com.mysql.jdbc.Dri ... 
