二级联动,三级联动,初学者,纯javascript,不含jQuery
二级联动:
html代码:
<body>
<select id="province" onchange="getCity(this.options.selectedIndex)">
<option>请选择</option>
<option>广东</option>
<option>广西</option>
</select>省
<select id="city">
<option>请选择</option>
</select>市
</body>
js代码:
var citys=[
["广州","佛山","深圳"],
["柳州","桂林"]
];
function getCity(index){
var city=document.getElementById('city');
var showCity=citys[index-1];
city.length=1;
for(var i=0;i<showCity.length;i++){
city.options[i+1]=new Option(showCity[i]);
}
}
三级联动:
html代码:
<body>
<select id="province" onchange="getCity()">
<option>请选择</option>
<option>广东</option>
<option>广西</option>
</select>省
<select id="city" onchange="getArea()">
<option>请选择</option>
</select>市
<select id="area">
<option>请选择</option>
</select>区
</body>
js代码:
var city = [
["广州", "朝阳", "潮州", "汕头"],
["柳州", "桂林"]
];
var areaa = [
[
["花都", "越秀", "荔湾", "天河", "海珠", "增城", "从化"],
["双塔", "龙城"],
["湘桥", "潮安"],
["龙湖", "濠江", "朝南", "澄海"]
],
[
["柳江", "柳南", "柳北"],
["叠彩", "秀峰", "七星", "雁山", "临桂"]
]
]; function getCity() {
var prov = document.getElementById("province");
var ci = document.getElementById("city");
var ar = document.getElementById('area');
var provinceCity = city[prov.selectedIndex - 1];
ci.length = 1; //为了处理数组切换时数据错乱
if(prov.selectedIndex != 0) {
for(var i = 0; i < provinceCity.length; i++) {
ci[i + 1] = new Option(provinceCity[i]);
//以下写法也可以
//ci.options[i+1]=new Option(provinceCity[i]);
}
}
ar.length = 1;
} function getArea() {
var prov = document.getElementById("province");
var ar = document.getElementById('area');
var ci = document.getElementById("city");
var provinceCityArea = areaa[prov.selectedIndex - 1][ci.selectedIndex - 1];
ar.length = 1; //为了处理数组切换时数据错乱
if(ci.selectedIndex != 0) {
for(var i = 0; i < provinceCityArea.length; i++) {
ar[i + 1] = new Option(provinceCityArea[i]);
}
} }
二级联动,三级联动,初学者,纯javascript,不含jQuery的更多相关文章
- 移动端纯原生JS不依赖ajax后台服务器实现省市县三级联动
最近好多天没有更新文章,是因为公司的项目忙的不行.今天有点时间,就突然想起在移动端项目中遇到三级联动的问题,网上查了很多资料,都是依赖各种插件,或者晦涩难于理解.于是,自己决定写一个出来. 当然,没有 ...
- 时间操作(JavaScript版)—年月日三级联动(默认显示系统时间)
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/wangshuxuncom/article/details/35263317 这个功能 ...
- 【转】纯JS省市区三级联动(行政区划代码更新至2015-9-30)
本文代码实现的功能是省市区三级联动下拉列表,纯Javascript,网上已有很多这方面的代码.但是作为一个新手,这是我的第一篇CSDN博客,发此文的目的主要是学习交流,希望看到的朋友发现有什么不对的地 ...
- JavaScript 三级联动
附件连接下载地址:http://files.cnblogs.com/files/CaktyRiven/js.zip <!DOCTYPE html> <html lang=" ...
- 转: javascript实现全国城市三级联动菜单代码
<html> <head> <title>js全国城市三级联动菜单代码_B5教程网</title> <meta http-equiv=" ...
- 从QQ网站中提取的纯JS省市区三级联动
在 http://ip.qq.com/ 的网站中有QQ自己的JS省市区三级联动 QQ是使用引用外部JS来实现三级联动的.JS如下:http://ip.qq.com/js/geo.js <!DOC ...
- 纯javascript联动的例子
有人想要学习下纯javascript联动的一些技巧,我这里就以日期的联动为例,附上一些代码至于复杂的省市区联动,不建议用纯javascript的,而是用ajax的方式,该不在此讨论范围内,想要了解aj ...
- 原生JavaScript的省市县三级联动
三级联动是我们写表单时必不可少的,比如在写收货地址时,就用到他了,最近在看原生JavaScript,从基础写起,待完善,以后再写个jquery版的. <!DOCTYPE html> < ...
- 在使用ajax实现三级联动调用数据库数据并通过调出的数据进行二级表单查询
在使用ajax实现三级联动查询数据库数据后再使用ajax无刷新方式使用三级联动调出的数据进行二级查询 但是现在遇到问题,在二级查询的时候期望是将数据以表格的形式展示在三级联动的下方,但是现在在查询后会 ...
随机推荐
- jenkins中集成commander应用
jenkins中集成commander应用 jenkins 集成测试 promotion 最近参加公司的集成测试平台的开发,在开发中遇到了不少问题,两个星期的迭代也即将完成,在这也用这篇博客记录下开发 ...
- vue 使用踩坑 note
1. 如图,假如large那一行错写成 'large': item.ext_data.isLarge + '' === 'true',, 那么,编译不报错,控制台无提示,模板不输出. 2. vue的t ...
- 全方位分析web前端如何进行性能优化
前言: 最近刚刚完成项目,空闲一段时间,想起之前有被问起怎么对前端进行性能优化,自己也是脑中零零散散的总不成体系,现特来总结,欢迎补充指教. 1.整体资源 (1)js.css源码压缩 (2)css文件 ...
- web前端 DOM 详解
先来点概念 文档对象模型(DOM)是一个独立于语言的,使用 XML 和 HTML 文档操作的应用程序接口(API). 在浏览器中,主要与 HTML 文档打交道,在网页应用中检索 XML 文档也很常见. ...
- java之集合Collection详解之2
package cn.itcast_02; import java.util.ArrayList; import java.util.Collection; /* * 练习:用集合存储5个学生对象,并 ...
- nagios监控mysql主机,nginx,磁盘IO,网卡流量
http://blog.chinaunix.net/uid-28685162-id-3506260.html nagios安装完成,打开/usr/local/nagios/etc/nagios.cfg ...
- java.lang.OutOfMemoryError: PermGen space 解决办法
最近在学习spring mvc时,用了大量的第三方jar包,导致启动tomcat时报内存溢出的错 java.lang.OutOfMemoryError: PermGen space 解决办法:在mye ...
- JVM学习记录-垃圾收集器
先回顾一下上一篇介绍的JVM中常见几种垃圾收集算法: 标记-清除算法(Mark-Sweep). 复制算法(Copying). 标记整理算法(Mark-Compact). 分代收集算法(Generati ...
- c# 如何读取web.config中的内容(ConfigurationManager)
1.web.config中写入 <appSettings> <add key="TokenQPark" value="http://localho ...
- JS代码检查工具ESLint
前面的话 ESLint是一个JavaScript代码静态检查工具,可以检查JavaScript的语法错误,提示潜在的bug,可以有效提高代码质量,维持前端团队高度一致的编码风格.ESLint不但提供一 ...