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 相关文章推荐
一个对于js this关键字的问题
Jan 09 Javascript
jquery each()源代码
Feb 14 Javascript
基于jQuery的遍历同id元素 并响应事件的代码
Jun 14 Javascript
两个listbox实现选项的添加删除和搜索
Mar 01 Javascript
IE6兼容透明背景图片及解决方案
Aug 19 Javascript
jQuery获取父元素节点、子元素节点及兄弟元素节点的方法
Apr 14 Javascript
jQuery获取file控件中图片的宽高与大小
Aug 04 Javascript
jQuery根据ID、CLASS、等获取对象的实例
Dec 04 Javascript
vue.js实现请求数据的方法示例
Feb 07 Javascript
详解AngularJs路由之Ui-router-resolve(预加载)
Jun 13 Javascript
es6函数之严格模式用法实例分析
Mar 17 Javascript
vue+node 实现视频在线播放的实例代码
Oct 19 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
4月1日重磅发布!《星际争霸II》6.0.0版本更新
2020/04/09 星际争霸
一个PHP缓存类代码(附详细说明)
2011/06/09 PHP
基于PHP实现的事件机制实例分析
2015/06/18 PHP
Yii框架实现多数据库配置和操作的方法
2017/05/25 PHP
5款Javascript颜色选择器
2009/10/25 Javascript
兼容多浏览器的iframe自适应高度(ie8 、谷歌浏览器4.0和 firefox3.5.3)
2009/11/04 Javascript
javascript 鼠标悬浮图片显示原图 移出鼠标后原图消失(多图)
2009/12/28 Javascript
用jquery实现等比例缩放图片效果插件
2010/07/24 Javascript
web开发人员学习jQuery的6大理由及jQuery的优势介绍
2013/01/03 Javascript
JS清除选择内容的方法
2015/01/29 Javascript
浅析Javascript中bind()方法的使用与实现
2016/05/30 Javascript
数据结构中的各种排序方法小结(JS实现)
2016/07/23 Javascript
JavaScript中push(),join() 函数 实例详解
2016/09/06 Javascript
Angular 4依赖注入学习教程之ValueProvider的使用(七)
2017/06/04 Javascript
记React connect的几种写法(小结)
2018/09/18 Javascript
Vue.js样式动态绑定实现小结
2019/01/24 Javascript
JS+CSS3实现的简易钟表效果示例
2019/04/13 Javascript
使用React代码动态生成栅格布局的方法
2020/05/24 Javascript
JavaScript React如何修改默认端口号方法详解
2020/07/28 Javascript
python遍历文件夹并删除特定格式文件的示例
2014/03/05 Python
Python yield 小结和实例
2014/04/25 Python
跟老齐学Python之集合的关系
2014/09/24 Python
Python下的subprocess模块的入门指引
2015/04/16 Python
使用Python制作自动推送微信消息提醒的备忘录功能
2018/09/06 Python
python print出共轭复数的方法详解
2019/06/25 Python
python 通过文件夹导入包的操作
2020/06/01 Python
用python爬虫批量下载pdf的实现
2020/12/01 Python
HTML5之WebGL 3D概述(下)—借助类库开发及框架介绍
2013/01/31 HTML / CSS
俄罗斯最大的消费电子连锁零售商:Mvideo
2017/06/25 全球购物
如何写出高质量、高性能的MySQL查询
2014/11/17 面试题
美食节策划方案
2014/05/26 职场文书
工会趣味活动方案
2014/08/18 职场文书
学校机关党总支领导班子整改工作方案
2014/10/26 职场文书
Java设计模式中的命令模式
2022/04/28 Java/Android
JavaScript实现九宫格拖拽效果
2022/06/28 Javascript
Docker容器harbor私有仓库部署和管理
2022/08/05 Servers