JavaScript实现省市县三级级联特效


Posted in Javascript onMay 16, 2017

本文实例为大家分享了js省市县三级级联特效的实现代码,供大家参考,具体内容如下

主要思想

1.省改变,市改变,并初始化县
2.市改变,县改变

html代码

<select id="sheng">
 <option value="">--请选择--</option>
 <option value="0">北京市</option>
 <option value="1">河北省</option>
 <option value="2">山西省</option>
 <option value="3">内蒙古自治区</option>
</select>
<select id="shi">
 <option value="">--请选择--</option>
</select>
<select id="xian">
 <option value="">--请选择--</option>
</select>

主要步骤

1.获取元素对象

var sheng = document.getElementById('sheng');
var shi = document.getElementById('shi');
var xian = document.getElementById('xian');

2.定义市和县的数组

var city = [
   ['昌平区', '海淀区', '朝阳区', '东城区'],
   ['石家庄市', '保定市', '张家口市', '唐山市'],
   ['太原市', '大同市', '运城市', '临汾市'],
  ['呼和浩特市', '包头市', '鄂尔多斯市', '赤峰市']
 ];
  var xians = [
  [
    ['北七家','回龙观','霍营'],
    ['中关村','苏州街','西二旗'],
    ['朝阳1','朝阳2','朝阳3'],
    ['东城1','东城2','东城3'],
  ],
  [
   ['新华区','桥东区','桥西区'],
   ['高碑店','白沟','定兴'],
  ]
 ];

3.定义全局变量

var index = null;

4.实现省份改变,市跟着变化的效果

sheng.onchange = function() {
   xian.innerHTML = '<option value="">--请选择--</option>';// 初始化xian
   index = this.value; // 获取option的值
   var result = city[index];//根据index去city数组中获取对应的shi
   // 将获取的结果显示在select#shi中,循环result数组中的"每一个值",在值的两侧加上option标签
   var str = '<option value="">--请选择--</option>';
   for (var i = 0; i < result.length; i++) {
   // 将所有的拼接好的市再次拼接为一个整体
   str += '<option value="'+i+'">' + result[i] + '</option>';
   }
   shi.innerHTML = str;//将字符串写入到select#shi中
 }

5.实现市改变,获取县城的效果

shi.onchange = function(){
 var value = this.value; // 获取当前的value值  
 var county = xians[index][value]; // 根据市获取市对应的县
 var str = '<option value="">--请选择--</option>';
 for (var i = 0; i < county.length; i++) {
  str += '<option value="'+i+'">' + county[i] + '</option>';
 }
 xian.innerHTML = str;//将数据写入到select#xian中
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Json和Jsonp理论实例代码详解
Nov 15 Javascript
jQuery实现仿淘宝带有指示条的图片转动切换效果完整实例
Mar 04 Javascript
轻松实现javascript图片轮播特效
Jan 13 Javascript
JS中call/apply、arguments、undefined/null方法详解
Feb 15 Javascript
jQuery实现点击弹出背景变暗遮罩效果实例代码
Jun 24 Javascript
angular中实现li或者某个元素点击变色的两种方法
Jul 27 Javascript
详解Node.js一行命令上传本地文件到服务器
Apr 22 Javascript
vue实现中部导航栏布局功能
Jul 30 Javascript
原生js canvas实现鼠标跟随效果
Aug 02 Javascript
前端开发基础javaScript的六大作用
Aug 06 Javascript
vue 全局封装loading加载教程(全局监听)
Nov 05 Javascript
Vue-Element-Admin集成自己的接口实现登录跳转
Jun 23 Vue.js
原生js简单实现放大镜特效
May 16 #Javascript
javascript 中iframe高度自适应(同域)实例详解
May 16 #Javascript
vue.js实现用户评论、登录、注册、及修改信息功能
May 30 #Javascript
Vue.js tab实现选项卡切换
May 16 #Javascript
Vue.js手风琴菜单组件开发实例
May 16 #Javascript
Bootstrap fileinput文件上传预览插件使用详解
May 16 #Javascript
js自定义瀑布流布局插件
May 16 #Javascript
You might like
新安装的MySQL数据库需要注意的安全知识
2008/07/30 PHP
php 安全过滤函数代码
2011/05/07 PHP
php中Session的生成机制、回收机制和存储机制探究
2014/08/19 PHP
PHP实现单例模式建立数据库连接的方法分析
2020/02/11 PHP
JavaScript在IE中“意外地调用了方法或属性访问”
2008/11/19 Javascript
用Javascript实现锚点(Anchor)间平滑跳转
2009/09/08 Javascript
使用RequireJS优化JavaScript引用代码的方法
2015/07/01 Javascript
跟我学习javascript的call(),apply(),bind()与回调
2015/11/16 Javascript
全面解析Bootstrap弹窗的实现方法
2015/12/01 Javascript
BootStrap.css 在手机端滑动时右侧出现空白的原因及解决办法
2016/06/07 Javascript
解决vue 格式化银行卡(信用卡)每4位一个符号隔断的问题
2018/09/14 Javascript
vue+element-ui实现表格编辑的三种实现方式
2018/10/31 Javascript
jQuery实现获取当前鼠标位置并输出功能示例
2019/01/05 jQuery
微信小程序渲染性能调优小结
2019/07/30 Javascript
vue element upload实现图片本地预览
2019/08/20 Javascript
vue 指令和过滤器的基本使用(品牌管理案例)
2019/11/04 Javascript
axios如何取消重复无用的请求详解
2019/12/15 Javascript
JS控制下拉列表左右选择实例代码
2020/05/08 Javascript
[58:46]OG vs NAVI 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
python发送邮件接收邮件示例分享
2014/01/21 Python
Python和Perl绘制中国北京跑步地图的方法
2016/03/03 Python
使用pandas中的DataFrame数据绘制柱状图的方法
2018/04/10 Python
浅谈Tensorflow由于版本问题出现的几种错误及解决方法
2018/06/13 Python
matplotlib实现区域颜色填充
2019/03/18 Python
Python 实现递归法解决迷宫问题的示例代码
2020/01/12 Python
python实现信号时域统计特征提取代码
2020/02/26 Python
全球游戏Keys和卡片市场:GamesDeal
2018/03/28 全球购物
美国婴儿和儿童家具网上商店:ABaby.com
2018/07/02 全球购物
四年的大学生生活自我评价
2013/12/09 职场文书
九年级家长会邀请函
2014/01/15 职场文书
幼儿园大班评语大全
2014/04/17 职场文书
通信工程专业求职信
2014/06/04 职场文书
领导干部群众路线个人对照检查材料思想汇报
2014/09/30 职场文书
Java 中的 Unsafe 魔法类的作用大全
2021/06/26 Java/Android
python装饰器代码解析
2022/03/23 Python
windows安装 redis 6.2.6最新步骤详解
2022/04/26 Redis