js 二级联动
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
function fn() {
var select = document.getElementById("city"); //获得城市 元素对象
var c = select.value; //获得选择的值value="" var area = document.getElementById("area"); //获得区域 元素对象 switch (c) { //条件语句
case "jx": area.innerHTML = "<option>抚州市</option><option>南昌市</option><option>赣州市</option><option>宜春市</option>";
break;
case "gd": area.innerHTML = "<option>广州市</option><option>韶关市</option><option>佛山市</option><option>东莞市</option>";
break;
case "fj": area.innerHTML = "<option>泉州市</option><option>厦门市</option><option>福州市</option><option>漳州市</option>";
break;
case "hn": area.innerHTML = "<option>长沙市</option><option>湘潭市</option><option>乐昌市</option><option>郴州市</option>";
break;
default: alert("error");
}
}; </script>
</head>
<body>
<select id="city" onchange="fn()"> <!--下拉框的改变事件-->
<option value="jx">江西</option>
<option value="gd">广东</option>
<option value="fj">福建</option>
<option value="hn">湖南</option>
</select>
<select id="area">
<option>抚州市</option>
<option>南昌市</option>
<option>赣州市</option>
<option>宜春市</option>
</select>
</body> </html>
2.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<select id="one">
<option>请输入省份</option>
</select>
<select id="two">
<option>请输入市</option>
</select>
<select id="three">
<option>请输入区</option>
</select>
<script type="text/javascript">
var oone = document.getElementById("one"); //获得下拉框元素对象
var otwo = document.getElementById("two"); //获得下拉框元素对象
var three = document.getElementById("three");//...
var str = ''; //定义一个空字符串
otwo.disabled = true; //禁用元素
three.disabled = true; //禁用元素
//包含多个个对象的数组
var arr1 = [
{ "id": "1", "value": "北京" },
{ "id": "2", "value": "上海" },
{ "id": "3", "value": "重庆" },
{ "id": "4", "value": "天津" },
{ "id": "5", "value": "山东" }
];
for (var i = 0; i < arr1.length; i++) { //遍历这个对象数组
str += "<option value=" + arr1[i].id + ">" + arr1[i].value + "</option>"
}
oone.innerHTML = str; //添加下拉框1 【添加内容】 var arr2 = { //json对象 ,这是一个拥有一个1【多个数组】的对象
'1': ['101@北京'],
'2': ['201@上海'],
'3': ['301@重庆'],
'4': ['401@天津'],
'5': ['501@济南', '502@青岛']
};
oone.onchange = function () { //下拉框1内容改变事件
var val = this.value; //获取选择项value值
var arrA = arr2[val]; //调用json对象的值 var str1 = '<option>请输入市</option>';
for (var j = 0; j < arrA.length; j++) { //遍历json对象的值
var aaa = arrA[j].split('@');//分割字符串 返回字符串数组
str1 += "<option value=" + aaa[0] + ">" + aaa[1] + "</option>"
}
otwo.innerHTML = str1; //下拉框2 【添加内容】
otwo.disabled = false; //下拉框元素启用
three.innerHTML = '<option>请输入区</option>'; //下拉框3 【添加内容】
//three.disabled = 'disabled'; //下拉框3禁用元素
three.disabled = true; //下拉框3禁用元素
}
var arr3 = {
'101': ['朝阳区', '昌平区'],
'201': ['宝山区', '浦东区'],
'301': ['不知道'],
'401': ['真的不知道'],
'501': ['市中区', '历下区', '槐荫区'],
'502': ['市南区', '市北区', '崂山区']
};
otwo.onchange = function () { //下拉框2内容改变事件
var val = this.value; //获取选择项value值
var str2 = '<option>请输入区</option>';
for (var l = 0; l < arr3[val].length; l++) { //遍历json对象的值
str2 += "<option >" + arr3[val][l] + "</option>"
}
three.innerHTML = str2; // //下拉框3 【添加内容】
three.disabled = false; //取消禁用元素
}
</script>
</body>
</html>
js 二级联动的更多相关文章
- 原生js二级联动
今天说的这个是原生js的二级联动,在空白页面里动态添加并作出相对应的效果. 1 //创建两个下拉列表 select标签 是下拉列表 var sel = document.createElement(& ...
- Ext.js二级联动
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <link href ...
- js二级联动
<body> <section> <a>省份</a> <select id="province"> <option ...
- xml+js+html的二级联动
首先需要准备的文档是: cities.xml //主要是标注中国各省及其各省下的各个城市 内容如下: <?xml version="1.0" encoding="U ...
- 省市二级联动--使用app-jquery-cityselect.js插件
只有省市二级联动,三级联动还没处理好,会尽快完善. 嵌入id: <div class="form-group"> <label>地址</label&g ...
- JS实现下拉单的二级联动
因工作需要,做了一个下拉单的二级联动. 第一级是固定的选项,有A.B两个选项,第二级的选项随着第一级选项的变化而变化. 一开始是这样的: HTML代码 <html> <head> ...
- 利用JS实现一个简单的二级联动菜单
前几天在看js的相关内容,所以就简单写了一个二级联动菜单.分享一下. <!DOCTYPE html> <html lang="en"> <head&g ...
- js:二级联动示例
联动原理 当用户点击省级的下拉选项,选择所在省,下一个下拉选项里的选项,则变成用户选择省下的所有市的信息,不会出现其它省市的信息. 省市数据 把省市数据,保存在js文件中,以json形式保存,以便读取 ...
- js小例子之二级联动
联动原理 当用户点击省级的下拉选项,选择所在省,下一个下拉选项里的选项,则变成用户选择省下的所有市的信息,不会出现其它省市的信息. 省市数据 把省市数据,保存在js文件中,以json形式保存,以便读取 ...
随机推荐
- 精彩的linux shell 命令
1. Star Wars (telnet) telnet是基于Telnet协议的远程登录客户端程序,经常用来远程登录服务器.除此还可以用它来观看星球大战: telnet towel.blinken ...
- CodeForces - 284C - Cows and Sequence
先上题目: C. Cows and Sequence time limit per test 3 seconds memory limit per test 256 megabytes input s ...
- [luogu2209][USACO13]燃油经济性Fuel Economy_贪心
燃油经济性Fuel Economy 题目大意:FJ想要去旅行.他的车总容量为G,每行驶一个单位就消耗一个单位的油.FJ要行驶D个单位的距离.期间存在n个加油站,每个加油站有一个价格,表示在这个燃油站买 ...
- CODEVS——T 1049 棋盘染色
http://codevs.cn/problem/1049/ 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Descr ...
- vjudge B - Design T-Shirt
B - Design T-Shirt 思路:水题,模拟即可. #include<cstdio> #include<cstring> #include<iostream&g ...
- 如何拿CSDN博客上的原图
比如带水印的地址: http://img.blog.csdn.net/20140408122234546?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdT ...
- Axis2中使用wsdl2java.bat生成客户端代码
1 准备环境 (1)下载Axis2的zip包axis2-1.5.5-bin.zip,并解压. 官方网址:http://ws.apache.org/axis2/ (2)设置环境变量(我的电脑->属 ...
- v$open_cursor的几个问题
SQL order by SADDR desc ; SADDR SID USER ADDRESS HASH_VALUE SQL_ID SQL_TEXT -------- ---------- ---- ...
- java获取类名不包括路径
class.getSimpleName(),就能获得仅仅的类名 class.getName()获得的是全路径的类名
- 编程算法 - 和为s的连续正整数序列 代码(C)
和为s的连续正整数序列 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 输入一个正数s, 打印出全部和为s的连续正数序列(至少含有两个数). 起 ...