js实现区县联动
1. 引入区县联动函数如下,将provinceList中数据改为需要联动的数据信息
var addressInit = function(_cmbProvince, _cmbCity, _cmbArea, _cmbStreet, defaultProvince, defaultCity, defaultArea,defaultStreet)
{
var cmbProvince = document.getElementById(_cmbProvince);
var cmbCity = document.getElementById(_cmbCity);
var cmbArea = document.getElementById(_cmbArea);
var cmbStreet = document.getElementById(_cmbStreet); function cmbSelect(cmb, str)
{
for(var i=0; i<cmb.options.length; i++)
{
if(cmb.options[i].value == str)
{
cmb.selectedIndex = i;
return;
}
}
}
function cmbAddOption(cmb, str, obj, num)
{
var option = document.createElement('OPTION');
cmb.options.add(option);
option.innerText = str;
option.value = num;
option.obj = obj;
console.log(num)
} function changeProvince()
{
cmbCity.options.length = 0;
cmbCity.onchange = null;
if(cmbProvince.selectedIndex == -1)return;
var item = cmbProvince.options[cmbProvince.selectedIndex].obj;
/**console.log(item)**/
for(var i=0; i<item.cityList.length; i++)
{
cmbAddOption(cmbCity, item.cityList[i].name, item.cityList[i],item.cityList[i].sleep);
}
cmbSelect(cmbCity, defaultCity);
} for(var i=0; i<provinceList.length; i++)
{
cmbAddOption(cmbProvince, provinceList[i].name, provinceList[i],provinceList[i].sleep);
}
cmbSelect(cmbProvince, defaultProvince);
changeProvince();
cmbProvince.onchange = changeProvince;
} /*用到的所有sleep为自定义属性,sleep可以自定义为指定数据,便于前后端数据交互*/
var provinceList = [
{name:'全部',sleep:'0',//省级
cityList:[//市级
{name:'全部',sleep:'0',
areaList:[//区县级
{name:'全部',sleep:'0'}
]
}
]
},
{name:'陕西省',sleep:'1',
cityList:[
{name:'全部',sleep:'0',
areaList:[
{name:'全部',sleep:'0'}
]
},
{name:'西安市',sleep:'1',
areaList:[
{name:'全部',sleep:'0'},
{name:'鄠邑区',sleep:'1'},
{name:'高新区',sleep:'2'}
]
},
{name:'渭南市',sleep:'2',
areaList:[
{name:'全部',sleep:'0'},
{name:'大荔县',sleep:'1'},
{name:'蒲城县',sleep:'2'}
]
}
]
},
{name:'浙江省',sleep:'2',
cityList:[
{name:'全部',sleep:'0',
areaList:[
{name:'全部',sleep:'0'},
{name:'杭州市',sleep:'1'},
{name:'宁波市',sleep:'2'}
]
},
{name:'杭州市',sleep:'1',
areaList:[
{name:'全部',sleep:'0'},
{name:'萧山区',sleep:'1'},
{name:'富阳区',sleep:'2'}
]
},
{name:'宁波市',sleep:'2',
areaList:[
{name:'全部',sleep:'0'},
{name:'江东区',sleep:'1'},
{name:'镇海区',sleep:'2'}
]
}
]
}
];
2. 在需要联动的页面调用addressInit()联动函数
addressInit('省id','市id','区县id');// 下拉框选择联动
js实现区县联动的更多相关文章
- 原生JS实现三级联动
代码实现 <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF- ...
- 循序渐进VUE+Element 前端应用开发(21)--- 省市区县联动处理的组件使用
在很多应用中,往往都涉及到记录用户所在省份.城市.区县或者街道等信息,一般我们可以通过联动的Select或者类似的界面组件进行展示,或者使用Element中的el-cascader界面组件进行展示,而 ...
- Pyqt QComboBox 省市区县联动效果
在Qt中, QComboBox方法窗口组件允许用户从列表清单中选择,在web中就是select标签,下拉选项. 省市区县的联动就是currentIndexChanged 获取当前的Index,通过这个 ...
- QQ JS省市区三级联动
如下图: 首先写一个静态的页面: <!DOCTYPE html> <html> <head> <title>QQ JS省市区三级联动</title ...
- 从QQ网站中提取的纯JS省市区三级联动
在 http://ip.qq.com/ 的网站中有QQ自己的JS省市区三级联动 QQ是使用引用外部JS来实现三级联动的.JS如下:http://ip.qq.com/js/geo.js <!DOC ...
- Js 实现五级联动
js实现多级联动的方法很多,这里给出⼀种5级联动的例子,其实可以扩展成N级联动,在做项目的时候碰到了这样⼀个问题但是有不能从数据库中动态的加载这些选项,所以只有想办法从单个的页面着手来处理了,应为项目 ...
- JS年月日三级联动下拉框日期选择代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- MVC图片上传详解 IIS (安装SSL证书后) 实现 HTTP 自动跳转到 HTTPS C#中Enum用法小结 表达式目录树 “村长”教你测试用例 引用provinces.js的三级联动
MVC图片上传详解 MVC图片上传--控制器方法 新建一个控制器命名为File,定义一个Img方法 [HttpPost]public ActionResult Img(HttpPostedFile ...
- JS 省市区三级联动
JS 省市区三级联动: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:/ ...
随机推荐
- less自动编译 VScode 开发工具配置
1.首先在vscode商店下载EasyLess插件,安装 2.在VS Code项目中,有一个.vscode的文件夹,找里面的settings.json文件(或者在文件-首选项-设置-搜索setting ...
- angular.uirouter
首先给大家介绍angular-ui-router的基本用法.如何引用依赖angular-ui-router angular.module('app',["ui.router"]). ...
- matlab中repmat函数的用法(堆叠矩阵)
matlab中repmat函数的用法 B = repmat(A,m,n) B = repmat(A,[m n]) B = repmat(A,[m n p...]) 这是一个处理大矩阵且内容有重复时使用 ...
- 排查在 Azure 中创建新 Linux 虚拟机时遇到的 Resource Manager 部署问题
本文内容 常见问题 收集活动日志 问题:自定义映像:预配错误 问题:自定义/库/应用商店映像:分配失败 后续步骤 尝试创建新的 Azure 虚拟机 (VM) 时,遇到的常见错误是预配失败或分配失败. ...
- c#MD5加密解密
MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),在90年代初由MIT Laboratory for Computer Science和RSA Data Secur ...
- JavaScript获取当前网页的源码
通过 outerHTML document.documentElement.outerHTML 通过异步请求 $.get(window.location.href,function(res){ con ...
- dedecms 权重排序问题
isweight='y' orderway='asc' orderby='weight' 依次进入根目录>dede 找到打开文件 album_edit.php //找到更新数据库的SQL ...
- June 09th 2017 Week 23rd Friday
The supreme happiness of life is the conviction that we are loved. 生活中最大的幸福就是,坚信有人爱着我们. One of my go ...
- 深入浅出C/C++中的正则表达式库
写在前面: 本文是面向有正则表达式基础的读者朋友的,如果你还不知道正则表达式是什么,请先到这里学习一下 :http://en.wikipedia.org/wiki/Regular_expressio ...
- 阿里云上到底能运行SAP哪些产品?
本文主要内容大部分来源于SAP已经发布的note: 2552731 - SAP Applications on Alibaba Cloud: Supported Products and IaaS ...