JavaScript省市联动菜单
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
//初始化一个二维数组存储城市列表项
var cities=[
["安庆","合肥","桐城"],
["石家庄","保定","唐山"],
["郑州","洛阳","开封"]
];
//选中某个省份时候。调用加入城市的方法
function provinceChanged(sel){
//alert("select的长度"+sel.options.length);
//sel事实上就是select对象
//遍历options集合,查找选中的选项
for(var x=0;x<sel.options.length;x++)
{
var opt=sel.options[x];
if(opt.selected)
{
//给被选择的城市的select 加入option
addCityToSelect(x)
}
}
}
//加入选中省份下的城市项到city的select中
function addCityToSelect(x){
//从二维数组中找出相应的城市
var city=cities[x-1];
var citySelect=document.getElementById("select_city");
/*==================删除节点中已经存在的元素===============
在第二次或第n次调用方法的时候城市select对象中已经加入了之前加入的节点,所以有清空。 思路1:select对象的removeChild(),所以通过循环遍历能够删除字节点。
思路2:直接设置select.options.length=1能够实现同样效果。
*/
//设置城市的select对象下的options长度为1
citySelect.options.length=1;
//设置options集合的长度,删除
//citySelect.options.length=1;
for(var x=0;x<city.length;x++)
{
//创建元素节点对象
var optionName=document.createElement("option");
//给option设置显示内容
optionName.innerHTML=city[x];
//将创建的option加入到select
citySelect.appendChild(optionName);
/*
在这个地方将某一个省份以下的全部城市加入到citySelect对象以下以后
当第二次选择第二个省份的时候。第二个省份的以下的全部城市有会被追加到
citySelect节点以下。这种效果就错了。 所以要求在每次加入之前,要
对citySelect节点以下的内容进行清空。接着看:
==================删除节点中已经存在的元素===============
*/
}
}
</script>
</head>
<body>
<select onchange="provinceChanged(this);">
<!--this的含义:是指select对象调用provinceChanged(this),而且在此方法中
把对象本身作为參数传递,以便对其进行操作。 -->
<option>请选择省份</option>
<option>安徽</option>
<option>河北</option>
<option>河南</option>
</select>
<select id="select_city">
<option>请选择城市</option>
</select>
</body>
</html>
JavaScript省市联动菜单的更多相关文章
- 通过Javascript数组设计一个省市联动菜单
通过Javascript数组设计一个省市联动菜单 使用Option内置类来完成下拉选项的创建 2.使用定时器实现一个时钟程序 3.使用PHP+JSON完成语音验证码 网址:http://yuyin.b ...
- [JS]以下是JS省市联动菜单代码
以下是JS省市联动菜单代码: 代码一: <html> <head> <title></title> <script language=" ...
- JavaScript省市联动
<html> <head> <title>JS省市二级联动菜单,整理收集.</title> </head> <body bgcolor ...
- 省市联动_简单的Demo,适用于各种二级菜单联动
最近搞了一个功能,是查询页面需要用到二级菜单联动,获取到选中的属性value传入到后台. 平常都是用AJAX或者JQuery ,通过XML或者JSON的方式,这样的话需要调用数据库,像典型得到省市联动 ...
- html css javascript 知识点总结 bom js 操作标签 文本 节点 表格各行变色 悬停变色 省市联动 正则
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- 转: javascript实现全国城市三级联动菜单代码
<html> <head> <title>js全国城市三级联动菜单代码_B5教程网</title> <meta http-equiv=" ...
- JavaScript 多级联动浮动(下拉)菜单 (第二版)
JavaScript 多级联动浮动(下拉)菜单 (第二版) 上一个版本(第一版请看这里)基本实现了多级联动和浮动菜单的功能,但效果不是太好,使用麻烦还有些bug,实用性不高.这次除了修改已发现的问 ...
- JavaScript基础4——省市联动
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- Javascript 笔记与总结(2-12)联动菜单
联动菜单: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
随机推荐
- 获取编译学习笔记 (六)—— si、di,双环
疯狂暑期学习 汇编入门学习笔记 (六)-- si.di,双重循环 參考: <汇编语言> 王爽 第7章 1. and和or指令,与[bx+idata] and和or.就不多说了. [bx+ ...
- coco2dx c++ HTTP实现
coco2dx c++ HTTP实现 达到的结果如下面的 iPhone截图 android 日志截图 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdnBp ...
- Windows Phone开发(14):数据模板
原文:Windows Phone开发(14):数据模板 数据模板,如果你仅仅听到这个名词,你一定很迷惑,什么来的?用来干什么的?不急,亲,今天,我们一起来探索一下吧. 用白话文说,数据模板就是用来规范 ...
- 【python下使用OpenCV实现计算机视觉读书笔记4】保存摄像头视频
读取摄像头内容,然后保存一段十秒钟的视频. import cv2 cameraCapture = cv2.VideoCapture(0) fps = 30 # an assumption size = ...
- 使用Spring的@Autowired 实现DAO, Service, Controller三层的注入(转)
简述: 结合Spring和Hibernate进行开发 使用@Autowired实现依赖注入, 实现一个学生注册的功能,做一个技术原型 从DAO(Repository) -> Service -& ...
- 性能是全新的 SEO
作为一个前端project师,那不只就是公开地处理那些美丽的html5, css3 和javascript特效.小而重要的一部分工作就是要让项目朝着代码稳定和代码标准方向进展.设计.信息结构以及后台限 ...
- Codeforces Round #256 (Div. 2) A. Rewards
A. Rewards time limit per test 1 second memory limit per test 256 megabytes input standard input out ...
- WPF 引用DLL纯图像资源包类库中的图片
原文:WPF 引用DLL纯图像资源包类库中的图片 1.建立WPF应用程序 过程略. 2.创建类库项目(图片资源包) 创建图片资源类库项目MyImages,删除 ...
- Sliverlight之 特效
1,OpacityMask控件的部分渐隐(见Project16) (1) 控件的OpacityMask有什么作用 说明:设置所选区域不透明度的画笔,一般结合LinearGradientBrush或Ra ...
- Unity 捕获IronPython脚本错误
using System; using System.Collections.Generic; using System.IO; using System.Reflection; using Syst ...