JSON+HTML实现国家省市联动选择效果


Posted in Javascript onMay 18, 2014
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<title>json</title> 
<script type="text/javascript"> 
<!-- 
var list=[{"name":"中国", 
"value":"86", 
"province":[{"name":"湖北", 
"value":"430000", 
"city":[{"name":"武汉","value":"wh"}, 
{"name":"黄冈","value":"hg"}, 
{"name":"襄阳","value":"xy"}]}, 
{"name":"河北", 
"value":"100000", 
"city":[{"name":"邯郸","value":"hd"}, 
{"name":"保定","value":"bd"}, 
{"name":"石家庄","value":"sjz"}]}, {"name":"湖南", 
"value":"440000", 
"city":[{"name":"长沙","value":"cs"}, 
{"name":"株洲","value":"zz"}, 
{"name":"衡阳","value":"hy"}]}]}, 
{"name":"美国", 
"value":"22", 
"province":[{"name":"阿肯色", 
"value":"990000", 
"city":[{"name":"纽约","value":"ny"}, 
{"name":"华盛顿","value":"hsd"}, 
{"name":"波士顿","value":"bsd"}]}, 
{"name":"阿哈哈", 
"value":"980000", 
"city":[{"name":"AA","value":"ahd"}, 
{"name":"BB","value":"abd"}, 
{"name":"CC","value":"asjz"}]}] 
}]; 
function init(){ 
var _country=document.getElementById("country"); 
for(var e in list){ 
var opt_1=new Option(list[e].name,list[e].value); 
_country.add(opt_1); 
} 
} 

function toProvince(){ 
var _country=document.getElementById("country"); 
var _province=document.getElementById("province"); 
var _city=document.getElementById("city"); 
var v_country=_country.value; 
_province.options.length=1; 
_city.options.length=1; 
for(var e in list){ 
if(list[e].value==v_country){ 
for( var p in list[e].province){ 
var opt_2=new Option(list[e].province[p].name,list[e].province[p].value); 
_province.add(opt_2); 
} 
break; 
} 
} 
} 

function toCity(){ 
var _country=document.getElementById("country"); 
var _province=document.getElementById("province"); 
var _city=document.getElementById("city"); 
var v_country=_country.value; 
var v_province=_province.value; 
//_province.options.length=1; 
_city.options.length=1; 

for(var e in list){ 
if(list[e].value==v_country){ 
for( var p in list[e].province){ 
//alert(list[e].province[p].value); 
if(list[e].province[p].value==v_province){ 
// alert(list[e].province[p].value); 
for(var cc in list[e].province[p].city){ 
var opt_3=new Option(list[e].province[p].city[cc].name,list[e].province[p].city[cc].value); 
_city.add(opt_3); 
} 
return; 
} 

} 
break; 
} 
} 
} 
//--> 
</script> 
</head> 
<body onload="init();";> 
<select id="country" onchange="toProvince();"> 
<option value="-1">--请选择国家---</option> 
</select> 
<select id="province" onchange="toCity();"> 
<option value="-1">--请选择省份---</option> 
</select> 
<select id="city"> 
<option value="-1">--请选择市区---</option> 
</select> 
</body> 
</html>
Javascript 相关文章推荐
js 图片随机不定向浮动的实现代码
Jul 02 Javascript
什么是cookie?js手动创建和存储cookie
May 27 Javascript
AngularJS转换响应内容
Jan 27 Javascript
js多功能分页组件layPage使用方法详解
May 19 Javascript
jquery+ajax+text文本框实现智能提示完整实例
Jul 09 Javascript
js轮盘抽奖实例分析
Apr 17 Javascript
JS+HTML5实现的前端购物车功能插件实例【附demo源码下载】
Oct 17 Javascript
PHP实现本地图片上传和验证功能
Feb 27 Javascript
深入理解在JS中通过四种设置事件处理程序的方法
Mar 02 Javascript
使用Vue构建可重用的分页组件
Mar 26 Javascript
详解vue中移动端自适应方案
May 05 Javascript
简单了解微信小程序 e.target与e.currentTarget的不同
Sep 27 Javascript
让alert不出现弹窗的两种方法
May 18 #Javascript
jqGrid读取选择的多行的某个属性代码
May 18 #Javascript
wap浏览自动跳转到wap页面的js代码
May 17 #Javascript
javascript教程:关于if简写语句优化的方法
May 17 #Javascript
javascript if条件判断方法小结
May 17 #Javascript
js加减乘除丢失精度问题解决方法
May 16 #Javascript
js脚本获取webform服务器控件的方法
May 16 #Javascript
You might like
php 数组的指针操作实现代码
2011/02/08 PHP
php动态生成缩略图并输出显示的方法
2015/04/20 PHP
PHP正则表达式入门教程(推荐)
2016/05/18 PHP
PHP针对多用户实现更换头像功能
2016/09/04 PHP
详解Yii2.0 rules验证规则集合
2017/03/21 PHP
JQuery 弹出框定位实现方法
2010/12/02 Javascript
用JS实现3D球状标签云示例代码
2013/12/01 Javascript
用jquery写的一个万年历(自写)
2014/01/20 Javascript
javascript实现控制文字大中小显示
2015/04/28 Javascript
jQuery禁用键盘后退屏蔽F5刷新及禁用右键单击
2016/01/22 Javascript
jQuery无刷新上传之uploadify3.1简单使用
2016/06/18 Javascript
微信小程序 详解Page中data数据操作和函数调用
2017/01/12 Javascript
为什么我们要做三份 Webpack 配置文件
2017/09/18 Javascript
vue-cli下的vuex的简单Demo图解(实现加1减1操作)
2018/02/26 Javascript
js blob类型url的视频下载问题的解决
2019/11/29 Javascript
微信小程序去除左上角返回键的实现方法
2020/03/06 Javascript
angular中的post请求处理示例详解
2020/06/30 Javascript
vant中的toast层级改变操作
2020/11/04 Javascript
[01:39]2014DOTA2国际邀请赛 Newbee经理CU专访队伍火力全开
2014/07/15 DOTA
[02:38]2018年度DOTA2最佳劣单位选手-完美盛典
2018/12/17 DOTA
pymongo为mongodb数据库添加索引的方法
2015/05/11 Python
基于Python实现文件大小输出
2016/01/11 Python
python指定写入文件时的编码格式方法
2018/06/07 Python
python list转矩阵的实例讲解
2018/08/04 Python
win10系统下Anaconda3安装配置方法图文教程
2018/09/19 Python
Pycharm取消py脚本中SQL识别的方法
2018/11/29 Python
解决pycharm工程启动卡住没反应的问题
2019/01/19 Python
Python获取好友地区分布及好友性别分布情况代码详解
2019/07/10 Python
Python中操作各种多媒体,视频、音频到图片的代码详解
2020/06/04 Python
Python爬虫+tkinter界面实现历史天气查询的思路详解
2021/02/22 Python
HTML5+CSS3模仿优酷视频截图功能示例
2017/01/05 HTML / CSS
提供世界各地便宜的机票:Sky-tours
2016/07/21 全球购物
国贸专业大学生职业生涯规划范文
2014/01/10 职场文书
《湘夫人》教学反思
2014/02/21 职场文书
交通安全温馨提示语
2015/07/14 职场文书
pytorch中的 .view()函数的用法介绍
2022/03/17 Python