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 相关文章推荐
jquery应该如何来设置改变按钮input的onclick事件
Dec 10 Javascript
如何使用Javascript正则表达式来格式化XML内容
Jul 04 Javascript
深入理解JavaScript系列(27):设计模式之建造者模式详解
Mar 03 Javascript
HTML+CSS+JS实现完美兼容各大浏览器的TABLE固定列
Apr 26 Javascript
基于jquery实现导航菜单高亮显示(两种方法)
Aug 23 Javascript
JS模态窗口返回值兼容问题的完美解决方法
May 28 Javascript
JQuery对ASP.NET MVC数据进行更新删除
Jul 13 Javascript
AngularJS全局scope与Isolate scope通信用法示例
Nov 22 Javascript
bootstrap modal弹出框的垂直居中
Dec 14 Javascript
vue中实现methods一个方法调用另外一个方法
Feb 08 Javascript
vue实现随机验证码功能(完整代码)
Dec 10 Javascript
vue:el-input输入时限制输入的类型操作
Aug 05 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
解决phpmyadmin中文乱码问题。。。
2007/01/18 PHP
MySql 按时间段查询数据方法(实例说明)
2008/11/02 PHP
php脚本守护进程原理与实现方法详解
2017/07/20 PHP
在云虚拟主机部署thinkphp5项目的步骤详解
2017/12/21 PHP
理解Javascript_11_constructor实现原理
2010/10/18 Javascript
StringTemplate遇见jQuery冲突的解决方法
2011/09/22 Javascript
jQuery实现简单网页遮罩层/弹出层效果兼容IE6、IE7
2014/06/16 Javascript
jQuery实现“扫码阅读”功能
2015/01/21 Javascript
jQuery实现tab选项卡效果的方法
2015/07/08 Javascript
js实现滚动条滚动到某个位置便自动定位某个tr
2021/01/20 Javascript
AngularJS中比较两个数组是否相同
2016/08/24 Javascript
原生JS和jQuery操作DOM对比总结
2017/01/19 Javascript
详解Vue-cli 创建的项目如何跨域请求
2017/05/18 Javascript
JS中把函数作为另一函数的参数传递方法(总结)
2017/06/28 Javascript
Iphone手机、安卓手机浏览器控制默认缩放大小的方法总结(附代码)
2017/08/18 Javascript
jQuery实现的点击标题文字切换字体效果示例【测试可用】
2018/04/26 jQuery
JS封装的模仿qq右下角消息弹窗功能示例
2018/08/22 Javascript
解决vue-cli 打包后自定义动画未执行的问题
2019/11/12 Javascript
微信小程序自定义菜单切换栏tabbar组件代码实例
2019/12/30 Javascript
python基础教程之lambda表达式使用方法
2014/02/12 Python
Win7上搭建Cocos2d-x 3.1.1开发环境
2014/07/03 Python
Python利用前序和中序遍历结果重建二叉树的方法
2016/04/27 Python
Pandas的read_csv函数参数分析详解
2019/07/02 Python
python使用原始套接字发送二层包(链路层帧)的方法
2019/07/22 Python
Python数据可视化:箱线图多种库画法
2019/11/06 Python
Happy Plugs官网:瑞典无线耳机品牌
2020/07/16 全球购物
广州地球村科技数据库题目
2016/04/25 面试题
卫校护理专业毕业生求职信
2013/11/26 职场文书
女大学生自我鉴定
2013/12/09 职场文书
《乌塔》教学反思
2014/02/17 职场文书
太太口服液广告词
2014/03/20 职场文书
补充协议书范本
2014/04/23 职场文书
银行先进个人事迹材料
2014/05/11 职场文书
小学同学聚会感言
2015/07/30 职场文书
python如何获取网络数据
2021/04/11 Python
MySQL慢查询优化解决问题
2022/03/17 MySQL