js实现的下拉框二级联动效果


Posted in Javascript onApril 30, 2016

本文实例讲述了js实现的下拉框二级联动效果。分享给大家供大家参考,具体如下:

<script language="JavaScript" type="text/javascript">
<!--
/*
 * 说明:将指定下拉列表的选项值清空
 * 转自:Gdong Elvis ( http://www.gdcool.net )
 *
 * @param {String || Object]} selectObj 目标下拉选框的名称或对象,必须
 */
 function removeOptions(selectObj)
 {
 if (typeof selectObj != 'object')
 {
 selectObj = document.getElementById(selectObj);
 }
 // 原有选项计数
 var len = selectObj.options.length;
 for (var i=0; i < len; i++) {
 // 移除当前选项
 selectObj.options[0] = null;
 }
 }
 /*
 * @param {String || Object]} selectObj 目标下拉选框的名称或对象,必须
 * @param {Array} optionList 选项值设置 格式:[{txt:'北京', val:'010'}, {txt:'上海', val:'020'}] ,必须
 * @param {String} firstOption 第一个选项值,如:“请选择”,可选,值为空
 * @param {String} selected 默认选中值,可选
 */
 function setSelectOption(selectObj, optionList, firstOption, selected) {
 if (typeof selectObj != 'object')
 {
 selectObj = document.getElementById(selectObj);
 }
 // 清空选项
 removeOptions(selectObj);
 // 选项计数
 var start = 0;
 // 如果需要添加第一个选项
 if (firstOption) {
 selectObj.options[0] = new Option(firstOption, '');
 // 选项计数从 1 开始
 start ++;
 }
 var len = optionList.length;
 for (var i=0; i < len; i++) {
 // 设置 option
 selectObj.options[start] = new Option(optionList[i].txt, optionList[i].val);
 // 选中项
 if(selected == optionList[i].val)  {
 selectObj.options[start].selected = true;
 }
 // 计数加 1
 start ++;
 }
 }
 //-->
</script>
<script language="JavaScript" type="text/javascript">
var cityArr = [];
cityArr['江苏省'] =
[
 {txt:'南京', val:'南京'},
 {txt:'无锡', val:'无锡'},
 {txt:'徐州', val:'徐州'},
 {txt:'苏州', val:'苏州'},
 {txt:'南通', val:'南通'},
 {txt:'淮阴', val:'淮阴'},
 {txt:'扬州', val:'扬州'},
 {txt:'镇江', val:'镇江'},
 {txt:'常州', val:'常州'}
 ];
cityArr['浙江省'] =
[
 {txt:'杭州', val:'杭州'},
 {txt:'宁波', val:'宁波'},
 {txt:'温州', val:'温州'},
 {txt:'湖州', val:'湖州'}
 ];
function setCity(province)
{
 setSelectOption('city', cityArr[province], '-请选择-');
}
</script>
 <select name="province" id="province" onchange="if(this.value != '') setCity(this.options[this.selectedIndex].value);">
 <option value="">-请选择-</option>
 <option value="江苏省">江苏省</option>
 <option value="浙江省">浙江省</option>
 </select>
 省
 <select name="city" id="city">
 <option value="">-请选择-</option>
 </select>
 市
Javascript 相关文章推荐
javascript 写的一个简单的timer
Jul 30 Javascript
基于JQuery实现CheckBox全选全不选
Jun 27 Javascript
关于IE BUG与字符串截取substr的解决办法
Apr 10 Javascript
js中typeof的用法汇总
Dec 12 Javascript
鼠标滑过出现预览的大图提示效果
Feb 26 Javascript
jQuery中parents()和parent()的区别分析
Oct 28 Javascript
JavaScript实现关键字高亮功能
Nov 12 Javascript
轻量级的原生js日历插件calendar.js使用指南
Apr 28 Javascript
readonly和disabled属性的区别
Jul 26 Javascript
angularJS 指令封装回到顶部示例详解
Jan 22 Javascript
vue Tab切换以及缓存页面处理的几种方式
Nov 05 Javascript
vue项目中锚点定位替代方式
Nov 13 Javascript
js实现精确到秒的日期选择器完整实例
Apr 30 #Javascript
js简单倒计时实现代码
Apr 30 #Javascript
一个用jquery写的判断div滚动条到底部的方法【推荐】
Apr 29 #Javascript
浅析jquery如何判断滚动条滚到页面底部并执行事件
Apr 29 #Javascript
jQuery中数据缓存$.data的用法及源码完全解析
Apr 29 #Javascript
浅析Javascript中bind()方法的使用与实现
Apr 29 #Javascript
深入剖析JavaScript中的函数currying柯里化
Apr 29 #Javascript
You might like
php下使用以下代码连接并测试
2008/04/09 PHP
php不写闭合标签的好处
2014/03/04 PHP
php中array_slice和array_splice函数解析
2016/10/18 PHP
php压缩文件夹最新版
2018/07/18 PHP
JavaScript点击按钮后弹出透明浮动层的方法
2015/05/11 Javascript
JavaScript实现级联菜单的方法
2015/06/29 Javascript
jQuery实现的淡入淡出二级菜单效果代码
2015/09/15 Javascript
Javascript验证方法大全
2015/09/21 Javascript
js删除数组元素、清空数组的简单方法(必看)
2016/07/27 Javascript
jQuery多选框选择数量限制方法
2017/02/08 Javascript
canvas实现爱心和彩虹雨效果
2017/03/09 Javascript
node.js实现登录注册页面
2017/04/08 Javascript
ZeroClipboard.js使用一个flash复制多个文本框
2017/06/19 Javascript
js时间戳与日期格式之间相互转换
2017/12/11 Javascript
angularJS1 url中携带参数的获取方法
2018/10/09 Javascript
vue实现手机号码的校验实例代码(防抖函数的应用场景)
2019/09/05 Javascript
JS数组方法concat()用法实例分析
2020/01/18 Javascript
[46:47]2014 DOTA2国际邀请赛中国区预选赛5.21 LGD-CDEC VS NE
2014/05/22 DOTA
[02:16]完美世界DOTA2联赛PWL S3 集锦第三期
2020/12/21 DOTA
Python读取分割压缩TXT文本文件实例
2020/02/14 Python
IDLE下Python文件编辑和运行操作
2020/04/25 Python
PyQt5通过信号实现MVC的示例
2021/02/06 Python
使用CSS3制作版头动画效果
2020/12/24 HTML / CSS
7 For All Mankind官网:美国加州洛杉矶的高级牛仔服装品牌
2018/12/20 全球购物
最新奶茶店创业计划书范文
2014/02/08 职场文书
学校运动会霸气口号
2014/06/07 职场文书
田径运动会通讯稿
2014/09/13 职场文书
成都人事代理协议书
2014/10/25 职场文书
白酒代理协议书范本
2014/10/26 职场文书
物业保安辞职信
2015/05/12 职场文书
心灵点滴观后感
2015/06/02 职场文书
小学数学教师研修日志
2015/11/13 职场文书
银行柜员优质服务心得体会
2016/01/22 职场文书
迎客户欢迎词三篇
2019/09/27 职场文书
给原生html中添加水印遮罩层的实现示例
2021/04/02 Javascript
Python 机器学习工具包SKlearn的安装与使用
2021/05/14 Python