今天用到两个关联的select,整理一下代码,仅供参考

如下:

<html>

<head>

<meta charset="UTF-8">

<title></title>

</head>

<script language="javascript">

function changeProvince() {

var slecctS = document.querySelectorAll(".select");

var countrys = new Array();

countrys["0"] = ["--请选择所在省份和地区--"];

countrys["北京市"] = ["朝阳区", "东城区", "西城区", "海淀区", "宣武区", "丰台区"];

countrys["上海市"] = ["宝山区", "长宁区", "闵行区", "杨浦区","黄浦区","虹口区","静安区"];

countrys["广州省"] = ["广州市", "珠海市", "汕头市", "揭阳市", "潮州市", "湛江市"];

countrys["深圳市"] = ["福田区", "南山区", "宝安区", "龙岗区", "盐田区", "罗湖区"];

countrys["重庆市"] = ["万州区", "渝中区", "大渡口区", "江北区", "沙坪坝区", "渝北区"];

countrys["天津市"] = ["和平区", "河东区", "河西区", "南开区", "红桥区", "武清区"];

var value = slecctS[0].value;

//option 集合可返回包含 <select> 元素中所有 <option> 的一个数组。

//注意: 数组中的每个元素对应一个 <option> 标签 - 由 0 起始。

slecctS[1].options.length = 0;

var option;

for(i = 0; i < countrys[value].length; i++) {

//new Option("文本","值",true,true)

//后面两个true分别表示默认被选中和有效!

option = new Option(countrys[value][i], countrys[value][i]);

slecctS[1].options.add(option);

slecctS[1].options.selected=countrys[value][0];

}

if(slecctS[0].value == "0"){

slecctS[1].disabled = true;

}

else{

slecctS[1].disabled = false;

}

}

</script>

</head>

<body>

<form method="post" action="" name="myForm">

国家:

<select name="country" onChange="changeProvince()" class="select">

<option value="0">--请选择省/城市--</option>

<option value="北京市">北京市</option>

<option value="上海市">上海市</option>

<option value="广州省">广州省</option>

<option value="深圳市">深圳市</option>

<option value="重庆市">重庆市</option>

<option value="天津市">天津市</option>

</select>

<select name="province" class="select">

<option>--请选择所在省份和地区--</option>

</select>

</form>

</body>

</html>

<!--

with(document){}

with 语句用于设置代码在特定对象中的作用域

with(document)

{.title='aaa';

}相当于:

document.title='aaa';

option的属性:

属性 描述
length 返回集合的option元素数目
selectedIndex 设置或者返回select对象已选选项的索引值。(以 0 起始)

option的方法:

index] 以数字形式指定元素索引 (以 0 开始)
[add(element[,index])] 在集合中添加option元素
item(index) 以数字索引返回集合中元素
namedItem(name) 以名称为索引返回集合元素
remove(index) 从集合中移除元素

-->

select两个关联的下拉列表的更多相关文章

  1. Oracle中如何实现Mysql的两表关联update操作

    在看<MySQL 5.1参考手册>的时候,发现MySQL提供了一种两表关联update操作.原文如下: UPDATE items,month SET items.price=month.p ...

  2. Oracle 数据库(oracle Database)Select 多表关联查询方式

    Oracle数据库中Select语句语法及介绍 SELECT [ ALL | DISTINCT ] <字段表达式1[,<字段表达式2[,…] FROM <表名1>,<表名 ...

  3. oracle 两表关联查询

      oracle 两表关联查询 CreationTime--2018年7月4日17点27分 Author:Marydon 情景描述 查询学生表student,sname,sex,age信息及所在班级c ...

  4. Oracle两表关联,只取B表的第一条记录

    背景:  A表.B表两表关联,关联出来的结果里B表有不止一条,需求是只要B表结果中的某一条(按某字段排序) 首先想到了直接写个带排序的子查询去匹配外围的值,从这个结果集中只要第一条,但是经过验证发现, ...

  5. Oracle-left join两表关联只取B表匹配到的第一条记录【over partition by(分组后对组内数据排序)】

    背景:  A表.B表两表关联,关联出来的结果里B表有不止一条,需求是只要B表结果中的某一条(按某字段排序) 经过百度,发现 row_number() over(partition by a order ...

  6. Python selenium 一个节点两个关联input

    HTML代码: 一个节点两个关联input  多出现于密码框 先需要模拟点击进入第一个input,才能激活第二个input. 代码: driver.find_element_by_name('Text ...

  7. 问题:oracle select into;结果:oracle SELECT INTO 和 INSERT INTO SELECT 两种表复制语句详解

    oracle SELECT INTO 和 INSERT INTO SELECT 两种表复制语句详解 (2011-07-08 08:59:47) 转载▼ 标签: it 分类: oracle 我们经常会遇 ...

  8. PostgreSQL SELECT INTO和INSERT INTO SELECT 两种表复制语句

    SELECT INTO和INSERT INTO SELECT两种表复制语句都可以用来复制表与表之间的数据,但是它们之间也有区别. 建表语句: bas_custom_rel表 CREATE TABLE ...

  9. MyBatis 中两表关联查询MYSQL (14)

    MyBatis 中两表关联查询MYSQL 1.创建数据库表语句 2.插入测试数据 3.pom文件内容 <?xml version="1.0" encoding="U ...

随机推荐

  1. ImportError: cannot import name 'check_arrays'

    from sklearn.utils.validation import check_arrays 执行 from sklearn.utils.validation import check_arra ...

  2. 我的Android第一章

    一.android是什么 基于linux系统下开发的开源系统 二.android的具体架构是什么 硬件[智能设备底层的硬件],驱动[软件和硬件之间沟通的桥梁],Linux系统[一款功能强大代码开源的系 ...

  3. java获取两个时间的相隔时间,包括年、月、日、时、分、秒

    public static final int YEAR_RETURN = 0;                    public static final int MONTH_RETURN = 1 ...

  4. Discuz的安装 (原创帖,转载请注明出处)

    ========================写在前面的话========================= 1.LAMP环境搭建请查看这篇日志:http://www.cnblogs.com/yic ...

  5. RTTI: dynamic_cast typeid

    dynamic_cast:将基类类型的指针向派生类指针安全转换.多用于下行转换.上行转换时,和static_cast是一样的.C++类型转换看这里.而const_cast用来修改类型的const或vo ...

  6. 学习日志 - Openwrt安装python然后wallproxy

    前提: - 先要把U盘插入路由器的usb口,大多数情况Openwrt都会自动挂载的吧,尽量找当前年或前一年的固件.ssh进路由器,可以看到/mnt/sda1 -  让路由器联网,因为需要从网络上下载安 ...

  7. Linux signal 常见的信号含义表

    http://blog.csdn.net/xgjianstart/article/details/4544418 通过命令 kill -l  可查看全部信号 SIGHUP 终止进程 终端线路挂断 本信 ...

  8. 【RabbitMQ】CentOS安装RabbitMQ,及简单的Java客户端连接

    在CentOS安装 因Rabbit MQ使用Erlang,所以需要先安装Erlang,安装过程中可能会遇到种种问题,可参考CentOS 6.5安装Erlang/OTP 17.0.然后就可以安装MQ了. ...

  9. mysql 5.7.16安装与给远程连接权限

    ZIP Archive版是免安装的.只要解压就行了.不需要安装.我的放在d盘啦. 1.配置: 也就是my.ini文件的由来. 把my-default.ini(此文件是解压之后,自带的)这个文件复制一下 ...

  10. CentOS 7 Rescure

    之前从来没想过会在Linux系统中使用这个东西-- 今天系统无法启动了!!! 一.开机进度条卡住了.查看一下字符卡在哪里了? Starting MySQL Community Server... 就是 ...