<form action="#" name="myform">
<label>省</label><select name="provice" id="provice"><option value="-1">请输入省份</option></select>
<label>市</label><select name="city" id="city"><option value="-1">请输入城市</option></select>
<label>县</label><select name="locale" id="locale"><option value="-1">请输入区县</option></select>
</form>

2. 定义json数据源:

    var jsonData = [{
treeNode : '请输入省份',
value : -1,
childNode : [{
treeNode : '请输入城市',
value : -1,
childNode : [{
treeNode : '请输入区县',
value : -1,
childNode : []
}]
}]
},{
treeNode : '北京',
value : 1,
childNode : [{
treeNode : '东城区',
value : 11,
childNode : []
},{
treeNode : '西城区',
value : 12,
childNode : []
}]
},{
treeNode : '广西壮族自治区',
value : 2601,
childNode : [{
treeNode : '南宁',
value : 6653,
childNode : [{
treeNode : '横县',
value : 10799,
childNode : []
}, {
treeNode : '宾阳县',
value : 10800,
childNode : []
}]
}]
}]

3. javascript代码:

    function initCountry(){
var provice = $("#provice");
var city = $("#city");
var locale = $("#locale");
var proviceStr = "";
$.each(<span style="color:#FF0000;">jsonData</span>,function(index,items){
proviceStr += "<option value='"+jsonData[index].value+"'>"+jsonData[index].treeNode+"</option>";
});
provice.empty().append(proviceStr);
provice.bind("change",function(){
if($(this).find(":selected").attr("value") == -1){
city.empty().append("<option value='-1'>请输入区县</option>");
}
});
provice.bind("change",function(){
var cityStr = '';
var index = provice.find(":selected").index();
$.each(jsonData[index].childNode,function(index,items){
city.empty();
cityStr += "<option value='"+items.value+"'>"+items.treeNode+"</option>";
city.append(cityStr);
})
changeLocale();
});
city.bind("change",changeLocale);
function changeLocale(){
var localeStr = '';
var index = provice.find(":selected").index();
var index2 = city.find(":selected").index();
$.each(jsonData[index].childNode[index2].childNode,function(index,items){
locale.empty();
localeStr += "<option value='"+items.value+"'>"+items.treeNode+"</option>";
locale.append(localeStr);
})
if(localeStr == ''){
locale.empty();
locale.append("<option value='-11'>请输入区县</option>");
}
}
}
$(function(){
initCountry(); })

用jquery写的json省市县三级联动下拉的更多相关文章

  1. 项目总结01:JSP mysql SpringMvc下中国省市县三级联动下拉框

    JSP mysql SpringMvc下中国省市县三级联动下拉框 关键词 JSP  mysql数据库  SpringMvc  ajax   Controller层  Service层  中国地区  省 ...

  2. jquery+html三级联动下拉框

    jquery+html三级联动下拉框及详情页面加载时的select初始化问题   html写的三个下拉框,如下: <select name="ddlQYWZYJ" id=&q ...

  3. PHP用ajia代码写三级联动下拉

    下面是我做三级联动下拉的步骤以及逻辑 第一步:先做一个省市区表格 第二步:建个PHP页面显示用我是在<body>里放<div>用来接收要显示的省市区表格信息,里面嵌入jquer ...

  4. jquery+ligerform三级联动下拉框

    如下为ligerform里的三级联动下拉框: var formData=[ {display:,width:,space:,type:"select",group:"区域 ...

  5. 用jsp实现省市区三级联动下拉

    jsp+jquery实现省市区三级联动下拉 不少系统都需要实现省市区三级联动下拉,像人口信息管理.电子商务网站.会员管理等,都需要填写地址相关信息.而用ajax实现的无刷新省市区三级联动下拉则可以改善 ...

  6. JS年月日三级联动下拉框日期选择代码

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  7. Android实现三级联动下拉框 下拉列表spinner

    Android实现(省.市.县)三级联动下拉框 下拉列表spinner 转载请注明出处: http://www.goteny.com/articles/2013/11/46.html http://w ...

  8. Web 1三级联动 下拉框 2添加修改删除 弹框

    Web  三级联动 下拉框 using System; using System.Collections.Generic; using System.Linq; using System.Web; u ...

  9. JQ与AJAX 省市区三级联动下拉框

    用于初学者学习基本的联动下拉框,废话不多说,见代码 首先看控制器里的3个下拉框对应代码: public ActionResult GetProvinceList() { ProvinceReposit ...

随机推荐

  1. nodejs基础知识查缺补漏

    1. 单线程.异步I/O.对比php nodejs是单线程的,但是是异步I/O,对于高并发时,它也能够快速的处理请求,100万个请求也可以承担,但是缺点是非常的耗内存,但是我们可以加大内存, 所以能用 ...

  2. ABP文档笔记 - 模块系统 及 配置中心

    ABP框架 - 模块系统 ABP框架 - 启动配置 Module System Startup Configuration ABP源码分析三:ABP Module ABP源码分析四:Configura ...

  3. Go语言下载网络图片或文件

    最近闲来无事, 于是就简单学习了下Go语言的基本的用法.由于实践才是最快的学习方法,所以这里就以下载网络图片或文件入手来学习Go语言 文件下载到本地,通常的思路就是先获得网络文件的 输入流 以及本地文 ...

  4. zookeeper 常用命令

    服务管理 启动ZK服务: zkServer.sh start 查看ZK状态: zkServer.sh status 停止ZK服务: zkServer.sh stop 重启ZK服务: zkServer. ...

  5. 把linux图形启动界面修改成命令行界面

    由于图形界面比较耗资源,需要把启动界面修改成命令行界面,怎么修改呢? 1.vim /etc/inittab 2.把id:5:initdefault:改成 id:3:initdefault: 3.重启即 ...

  6. vsftpd配置文件解析

    对vsftpd配置文件详细解答. 1.默认配置: 1>允许匿名用户和本地用户登陆. anonymous_enable=YES local_enable=YES 2>匿名用户使用的登陆名为f ...

  7. 你还在把Java当成Android官方开发语言吗?Kotlin了解一下!

    导语:2017年Google IO大会宣布使用Kotlin作为Android的官方开发语言,相比较与典型的面相对象的JAVA语言,Kotlin作为一种新式的函数式编程语言,也有人称之为Android平 ...

  8. Java学习第二十一天

    1:字符流(掌握) (1)字节流操作中文数据不是特别的方便,所以就出现了转换流. 转换流的作用就是把字节流转换字符流来使用. (2)转换流其实是一个字符流 字符流 = 字节流 + 编码表 (3)编码表 ...

  9. bzoj 3243: [Noi2013]向量内积

    Description 两个d 维向量A=[a1,a2,...,ad]与B=[b1,b2,...,bd]的内积为其相对应维度的权值的乘积和,即: 现有 n 个d 维向量x1,...,xn ,小喵喵想知 ...

  10. ie8点击焦点有虚线框兼容问题

    a标签的: 方法一:在IE下是使用html属性:hideFoucs,在HTML标签中加上hidefocus=”true” 属性即可,但这个属性是IE私有的,Firefox是不认的. <a hre ...