javascript基于DOM实现省市级联下拉框的方法


Posted in Javascript onMay 14, 2015

本文实例讲述了javascript基于DOM实现省市级联下拉框的方法。分享给大家供大家参考。具体实现方法如下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>省市级联下拉框</title>
<script type="text/javascript">
var provs = { "江西省": ["南昌市", "景德镇", "九江", "鹰潭", "萍乡", "新馀", "赣州", "吉安", "宜春", "抚州", "上饶"],
  "福建省": ["福州", "厦门", "莆田", "三明", "泉州", "漳州", "南平", "龙岩", "宁德"],
  "河北省": ["石家庄", "邯郸", "邢台", "保定", "张家口", "承德", "廊坊", "唐山", "秦皇岛", "沧州", "衡水"]
};
function loadProv() {
  //加载省份数据
  var prov = document.getElementById("prov");
  for (var key in provs) {
    var provName = key;
    var optProv = document.createElement("option");
    optProv.value = provName;
    optProv.innerText = provName;
    prov.appendChild(optProv);
  }
}
function provChange() {
  var prov = document.getElementById("prov");
  var city = document.getElementById("city");
  var provName = prov.value;
  //如果没有选择省份,则把城市下拉框隐藏
  if (provName == "none") {
    city.style.display = "none";
    return;
  }
  else {
    city.style.display = "";
  }
  var citys = provs[provName];
  //city.options.length = 0;
  //用这种方法也可以清空原始列表
  //清空城市的原始数据
  for (var i = city.childNodes.length - 1; i >= 0; i--) {
    var child = city.childNodes[i];
    city.removeChild(child);
  }
  //添加新的城市数据
  for (var i = 0; i < citys.length; i++) {
    var optCity = document.createElement("option");
    optCity.value = citys[i];
    optCity.innerText = citys[i];
    city.appendChild(optCity);
  }
}
</script>
</head>
<body onload="loadProv()">
<select id="prov" onchange="provChange()">
<option value="none">请选择省</option>
</select>
<select id="city" style="display:none"></select>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
JQuery 选择器 xpath 语法应用
May 13 Javascript
chrome原生方法之数组
Nov 30 Javascript
JS常用函数使用指南
Nov 23 Javascript
BootStrapValidator初使用教程详解
Feb 10 Javascript
微信小程序中多个页面传参通信的学习与实践
May 05 Javascript
vue mint-ui学习笔记之picker的使用
Oct 11 Javascript
微信小程序 如何引入外部字体库iconfont的图标
Jan 31 Javascript
小程序红包雨的实现示例
Feb 19 Javascript
原生js实现获取form表单数据代码实例
Mar 27 Javascript
vue按需加载实例详解
Sep 06 Javascript
解决vue.js中settimeout遇到的问题(时间参数短效果不稳定)
Jul 21 Javascript
全面解析js中的原型,原型对象,原型链
Jan 25 Javascript
javascript搜索框效果实现方法
May 14 #Javascript
javascript操作ul中li的方法
May 14 #Javascript
javascript中createElement的两种创建方式
May 14 #Javascript
javascript常用方法总结
May 14 #Javascript
javascript实现动态改变层大小的方法
May 14 #Javascript
JavaScript中停止执行setInterval和setTimeout事件的方法
May 14 #Javascript
javascript实现点击按钮弹出一个可关闭层窗口同时网页背景变灰的方法
May 13 #Javascript
You might like
历史证明,懒惰才是推动科学发展技术进步的动力
2021/03/02 无线电
非常不错的MySQL优化的8条经验
2008/03/24 PHP
一个显示效果非常不错的PHP错误、异常处理类
2014/03/21 PHP
PHP中soap的用法实例
2014/10/24 PHP
Thinkphp5 自定义上传文件名的实现方法
2019/07/23 PHP
JavaScript国旗变换效果代码
2008/08/13 Javascript
jQuery autocomplate 自扩展插件、自动完成示例代码
2011/03/28 Javascript
深入理解JavaScript系列(7) S.O.L.I.D五大原则之开闭原则OCP
2012/01/15 Javascript
jQuery实现id模糊查询的小例子
2013/03/19 Javascript
Js 导出table内容到Excel的简单实例
2013/11/19 Javascript
不提示直接关闭网页窗口的JS示例代码
2013/12/17 Javascript
Javascript的表单验证-初识正则表达式
2016/03/18 Javascript
jQuery代码实现对话框右上角菜单带关闭×
2016/05/03 Javascript
基于jquery插件编写countdown计时器
2016/06/12 Javascript
Vuejs第十三篇之组件——杂项
2016/09/09 Javascript
Angular.JS实现无限级的联动菜单(使用demo)
2017/02/08 Javascript
判断横屏竖屏(三种)
2017/02/13 Javascript
微信小程序 实现动态显示和隐藏某个控件
2017/04/27 Javascript
jquery单击文字或图片内容放大并居中显示
2017/06/23 jQuery
jQuery列表检索功能实现代码
2017/07/17 jQuery
vue2里面ref的具体使用方法
2017/10/27 Javascript
在Node.js下运用MQTT协议实现即时通讯及离线推送的方法
2019/01/24 Javascript
原生js实现抽奖小游戏
2019/06/27 Javascript
在vue中根据光标的显示与消失实现下拉列表
2019/09/29 Javascript
python字符串的常用操作方法小结
2016/05/21 Python
Python3.5 创建文件的简单实例
2018/04/26 Python
Python实现的从右到左字符串替换方法示例
2018/07/06 Python
python缩进长度是否统一
2020/08/02 Python
深入CSS3 动画效果的总结详解
2013/05/09 HTML / CSS
银行门卫岗位职责
2013/12/29 职场文书
网上蛋糕店创业计划书
2014/01/24 职场文书
简单的大学生自我鉴定
2014/02/18 职场文书
党委书记个人对照检查材料
2014/09/15 职场文书
2016年教师节特级教师获奖感言
2015/12/09 职场文书
详解Node.js如何处理ES6模块
2021/05/15 Javascript
Python matplotlib安装以及实现简单曲线的绘制
2022/04/26 Python