级联下拉菜单的实现「建议收藏」

级联下拉菜单的实现「建议收藏」级联下拉菜单的实现

大家好,又见面了,我是你们的朋友全栈君。

    最近在项目中用到了级联菜单,在网上查过资料后,大概有两种实现思路:

1.下拉列表中的数据从数据库中自动获取

2.下拉列表中的每一个选项都写在代码中

    相信我们都会选择第一种方法,这样不仅增强了代码的复用性,而且当我们的需求变动,需要显示新的数据时,只要更新数据库就可以了。而第二种方法只能适用于某种情况,需求改变,就需要在代码中进行大量的修改。

    我们今天就先来介绍一下用第二种方法来实现级联下拉菜单的效果

<!DOCTYPE > 
<html>  
	<head> 
		<title> 代码实例:级联菜单 </title> 
		<meta content="text/html; charset=utf-8" /> 
	</head> 
	<body> 
		<select id="College" name="College" size="1" οnchange="Redirect(this.options.selectedIndex)"> 
			<option value="">化学与材料科学学院</option> 
			<option value="">管理学院</option> 
			<option value="">教育学院</option> 
			<option value="">经济学院</option>
			<option value="">其他</option> 
		</select> 
		<select id="Major" name="Major" size="1"> 
			<option value="1">化学</option> 
			<option value="2">材料化学</option> 
			<option value="3">应用化学</option> 
		</select> 
		<script type="text/javascript"> 

			var groups = document.getElementById("College").options.length; 
			var group = new Array(groups) 
			for (i = 0; i < groups; i ++) 
			group[i] = new Array() 
			group[0][0] = new Option("化学","40") 
			group[0][1] = new Option("材料化学","41") 
			group[0][2] = new Option("应用化学","42") 

			group[1][0] = new Option("财务管理本科","1") 
			group[1][1] = new Option("财务管理专接本","2") 
			group[1][2] = new Option("财务会计专科","3") 
			group[1][3] = new Option("财务信息管理专科","4") 

			group[2][0] = new Option("初等教育理本科","80") 
			group[2][1] = new Option("初等教育文本科","81") 
			group[2][2] = new Option("教育学本科","82") 
			group[2][3] = new Option("心理学本科","83") 

			group[3][0] = new Option("国际经济与贸易本科","120") 
			group[3][1] = new Option("市场营销本科","121") 
			group[3][2] = new Option("国际贸易实务专科","122") 
			group[3][3] = new Option("市场营销专科","123") 
			group[3][4] = new Option("金融与证劵专科","124") 

			group[4][0] = new Option("其他","160") 

			var temp = document.getElementById("Major"); 
			function Redirect(x){ 
			   for (m = temp.options.length-1; m > 0; m --) 
			   temp.options[m] = null 
			   for (i = 0; i < group[x].length; i ++){ 
			       temp.options[i] = new Option(group[x][i].text,group[x][i].value); 
			   } 
			   temp.options[0].selected = true 
			} 
		</script>	 

	</body> 
</html> 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/105728.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 永久免费的ssl证书哪里申请_免费永久证书

    永久免费的ssl证书哪里申请_免费永久证书1、阿里云推荐指数:★★☆☆☆免费证书类型:DV域名型免费证书品牌:DigiCert(原赛门铁克(Symantec))免费通配符证书:不支持易操作性:简单证书有效期:1年自动更新:不支持自动部署:不支持优点:有效期长阿里云仅提供免费的单域名HTTPS证书,如果你仅只需要一个单域名的证书,可以使用阿里云的免费证书,毕竟DigiCert是大品牌,值得信赖。在证书即将到期前,需要再次手动申请证书,不支持自动化申请和部署。申请链接:https://common-buy.aliyun.c

    2022年10月1日
  • 端口分类_宽带端口是什么样的

    端口分类_宽带端口是什么样的一、端口通俗地讲,端口(Port)就是电脑向网络开放的信息出入“门户”。和小区大门不同的是,在电脑上这种“门户”有个256×256(65535)个,而且它们还有多种状态。1.端口的分类根据端口和服务的绑定情况,端口可分为公认端口、注册端口和动态端口。公认端口:0~1023。这个范围内的端口系统一般保留给一些常用的系统服务,比如WEB服务使用80端口,FTP服务使用21端口

    2022年9月5日
  • Java高级面试题!69个经典Java面试题和答案详解

    Java高级面试题!69个经典Java面试题和答案详解拼多多一面首先自我介绍参加过哪些项目并发编程三要素?实现可见性的方法有哪些?多线程的价值?创建线程的三种方式的对比?画出线程的状态流转图常用的并发工具类有哪些?CyclicBarrier和CountDownLatch的区别CAS的问题:1、CAS容易造成ABA问题2、不能保证代码块的原子性3、CAS造成CPU利用率增加ReadWriteLock是什么一面面试题答案:拼多多二面自我介绍什么是工厂模式?如何实现单链表的增删操作?让我说意思JVM的分为哪几块

    2022年8月21日
  • Mayavi入门_乐理知识入门

    Mayavi入门_乐理知识入门环境,win7/1064位,python3.x1,安装Mayavi4.6原装的pip下载奇慢,先更换一下源,豆瓣的更新要比清华的快首先在window的文件夹窗口输入:%APPDATA%

    2022年8月5日
  • snmp trap服务_SNMP服务

    snmp trap服务_SNMP服务浅谈Linux中开发SNMPTrapSNMPTrap是一种标准的报告机制,广泛应用在各种网络管理软件中。本文详细介绍了SNMPTrap的基本概念,以及Linux下面net-snmp对SNMPTrap的开发与应用。1.SNMPTrap简介SNMP简单网络管理协议(SimpleNetworkManagementProtocol)是一种应用层协议,是TCP/IP协议族的一部分。它使网络设备之间能…

    2022年8月22日
  • weka中文论坛

    weka中文论坛

    2021年8月15日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号