javascript实现简单的二级联动
作者:hebedich 发布时间:2024-04-19 09:49:15
标签:javascript,二级联动
二级联动在一般的网页中随处可见,一般是地址,比如点击浙江省,随后出现的是杭州市,嘉兴市;点击北京省出现的是朝阳,海淀,而不是出现杭州,嘉兴。
要想实现这个步骤,就要用到javascript来实现。其中原理用到onchange时间。
首先,onchange 事件会在域的内容改变时发生。支持该事件的 JavaScript 对象:fileUpload, select, text, textarea,我们在实现二级联动中正是用到select来完成。
以下是HTML代码,先设置一个select为省,第二个select为市,但是市我们在js中用数组将其与省份连接。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>javascript二级联动</title>
</head>
<body>
<select id="province">
<option value="-1">省</option>
<option value="0">北京</option>
<option value="1">浙江</option>
</select>
<select id="city">
</select>
<script src="../js/province.js"></script>
</body>
</html>
以下是js代码
var province = document.getElementById("province");
var city = document.getElementById("city");
var area = [
['朝阳','海淀','北京'], //第0个area的数组。0{0,1,2}
['杭州','海宁'] //第1个area的数组, 1{0.1}
];
function choose(){
var opt = "";
var len = area[province.value]; //如果选择北京0,那么,len=['朝阳‘,'海淀‘] 这个是连接哪个省份对应着哪个市的<span style="background-color: #888888;">市的</span>数组
if(province.value == '-1'){ //因为select的value为-1的时候是‘省'这个字,而不是北京,所以,我们选择这个省的时候对应着让他的市为空
city.innerHTML = opt;
}
for(var i = 0;i < len.length; i++){ //area的数组个数for(i = 0;i < 3; i++)
opt = opt + '<option value ="'+ i +'"> '+ len[i]+ '</option>' //opt = "" + <option value = "0">朝阳(lin[0])</option>,
//opt = <option value = "0">朝阳(lin[0])</option>, + <br>
<option value = "1">海淀(lin[1])</option>
//opt = <option value = "0">朝阳(lin[0])</option>, + <br>
<option value = "1">海淀(lin[1])</option> + <br>
<option value = "2">北京(lin[2])</option>
}
city.innerHTML = opt;
}
province.onchange = function(){
choose();
}
二级联动在一般的网页中随处可见,一般是地址,比如点击浙江省,随后出现的是杭州市,嘉兴市;点击北京省出现的是朝阳,海淀,而不是出现杭州,嘉兴。
要想实现这个步骤,就要用到javascript来实现。其中原理用到onchange时间。
以上所述就是本文的全部内容了,希望大家能够喜欢。
0
投稿
猜你喜欢
- vue计算属性的缓存computed用法计算属性的缓存<!DOCTYPE html><html lang="en
- 三个工具包python操作excel的三个工具包如下,注意,只能操作.xls,不能操作.xlsx。• xlrd: 对excel进行读相关操作
- 简介Python Fire是谷歌开源的一个第三方库,用于从任何Python对象自动生成命令行接口(CLI),可用于如快速拓展成命令行等形式。
- Go(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。下载Go语言开发包大家可以在Go语
- 介绍Session:在计算机中,尤其是在网络应用中,称为“会话控制”。Session 对象存储特定用户会话所需的属性及配置信息。这样,当用户
- Python3,开一个线程,间隔1秒把一个递增的数字写入队列,再开一个线程,从队列中取出数字并打印到终端#! /usr/bin/env py
- mutilprocess像线程一样管理进程,这个是mutilprocess的核心,他与threading很是相像,对多核CPU的
- networkx是Python的一个包,用于构建和操作复杂的图结构,提供分析图的算法。图是由顶点、边和可选的属性构成的数据结构,顶点表示数据
- 执行环境会负责管理代码执行过程中使用的内存,编写JavaScript程序时,所需内存的分配以及无用内存的回收完全实现自动管理。原理:找出那些
- 最近几天仔细研究了一下vertical-align这个属性,结果让我大吃一惊,这个很“资深”的CSS标准竟然在各个浏览器里面的表现都各不相同
- 本文实例讲述了Python3中函数参数传递方式。分享给大家供大家参考,具体如下:之前在看北理工嵩天等老师的python3的课程,在第五周中老
- JS:$(".con").eq(0).show(); $(".btn span").cl
- 如果你需要一个PDF文件合并工具,那么本文章完全可以满足您的要求。哈喽,大家好呀,这里是滑稽研究所。不多废话,本期我们利用Python合
- element-ui el-table组件自定义合计(summary-method)坑项目需要用到表格,带有合计功能的,照搬的element
- Oracle存储过程基本语法 存储过程 1 CREATE OR REPLACE PROCEDURE 存储过程名 2 IS 3 BEGIN 4
- validator自定义验证及易错点validator自定义验证element中Form 组件提供了表单验证的功能,只需要通过 rules
- 0x 00 返回值简介回顾下,上一节简单介绍了函数及其各种参数,其中也有简单介绍 print 和 return 的区别,print 仅仅是打
- 正在看的ORACLE教程是:ORACLE常见错误代码的分析与解决(三)。  
- 增大 SGA 已经缓冲看来对于性能的提升并不显著,加载时间只提升了 1.73%。下面我们增加 SGA 重做日志的大小: DB3: Log B
- python opencv实现目标跟踪python-opencv3.0新增了一些比较有用的 * 算法这里根据官网示例写了一个 * 类程序只能