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 相关文章推荐
HTML-CSS群中单选引发的“事件”
Mar 05 Javascript
JS IE和FF兼容性问题汇总
Feb 09 Javascript
jQuery纵向导航菜单效果实现方法
Dec 19 Javascript
利用Vue.js实现checkbox的全选反选效果
Jan 18 Javascript
vue插件vue-resource的使用笔记(小结)
Aug 04 Javascript
表格展示利器 Bootstrap Table实例代码
Sep 06 Javascript
Node.js的进程管理的深入理解
Jan 09 Javascript
详解基于electron制作一个node压缩图片的桌面应用
Jan 29 Javascript
Vue服务端渲染实践之Web应用首屏耗时最优化方案
Mar 22 Javascript
jQuery层叠选择器用法实例分析
Jun 28 jQuery
layui监听单元格编辑前后交互的例子
Sep 16 Javascript
微信小程序开发中var that =this的用法详解
Jan 18 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输入数据统一类实例
2015/02/23 PHP
CodeIgniter钩子用法实例详解
2016/01/20 PHP
php操作路径的经典方法(必看篇)
2016/10/04 PHP
详解yii2实现分库分表的方案与思路
2017/02/03 PHP
PHP用函数嵌入网站访问量计数器
2017/10/27 PHP
Add Formatted Data to a Spreadsheet
2007/06/12 Javascript
jQuery 过滤not()与filter()实例代码
2012/05/10 Javascript
js解析xml字符串和xml文档实现原理及代码(针对ie与火狐)
2013/02/02 Javascript
cookie的复制与使用记住用户名实现代码
2013/11/04 Javascript
javascript实现网页端解压并查看zip文件
2015/12/15 Javascript
基于Javascript实现二级联动菜单效果
2016/03/04 Javascript
AngularJS实践之使用NgModelController进行数据绑定
2016/10/08 Javascript
网页瀑布流布局jQuery实现代码
2016/10/21 Javascript
vue.js学习之递归组件
2016/12/13 Javascript
bootstrap fileinput 插件使用项目总结(经验)
2017/02/22 Javascript
jQuery自定义元素右键点击事件(实现案例)
2017/04/28 jQuery
使用Node.js实现RESTful API的示例
2017/08/01 Javascript
nodejs的路径问题的解决
2018/06/30 NodeJs
Vuejs开发环境搭建及热更新【推荐】
2018/09/07 Javascript
Vue多组件仓库开发与发布详解
2019/02/28 Javascript
Python中实现从目录中过滤出指定文件类型的文件
2015/02/02 Python
Python中运行并行任务技巧
2015/02/26 Python
python3音乐播放器简单实现代码
2020/04/20 Python
django manage.py扩展自定义命令方法
2018/05/27 Python
Python快速查找list中相同部分的方法
2018/06/27 Python
python2.7使用plotly绘制本地散点图和折线图
2019/04/02 Python
python使用Qt界面以及逻辑实现方法
2019/07/10 Python
Python3 selenium 实现QQ群接龙自动化功能
2020/04/17 Python
使用HTML5在网页中嵌入音频和视频播放的基本方法
2016/02/22 HTML / CSS
学习十八大坚定理想信念心得体会
2014/03/11 职场文书
部门群众路线教育实践活动对照检查材料思想汇报
2014/10/07 职场文书
高中班主任评语
2014/12/30 职场文书
2015年科协工作总结
2015/05/19 职场文书
浅谈怎么给Python添加类型标注
2021/06/08 Python
Python re.sub 反向引用的实现
2021/07/07 Python
MySQL 那些常见的错误设计规范,你都知道吗
2021/07/16 MySQL