JavaScript实现三级联动菜单效果
发布时间 - 2026-01-11 02:49:00 点击率:次三级联动考察的应该是对于数据的处理,只要清楚其中的关系,再多几级都是一样的:

html部分:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>3级联动菜单</title>
<script>
var region = {
广东:
{
"广州":["广州1","广州2","广州3"],
"珠海":["珠海1","珠海2","珠海3"],
"佛山":["佛山1"]
},
湖南:
{
"常德":["石门","桃源","临澧","汉寿"],
"益阳":["益阳1","益阳2","益阳3"]
}
}
</script>
</head>
<body>
<select id="province" onchange="change(this.value);">
<option>请选择省份</option>
</select>
<select id="city" onchange="countyChange(this.value);">
<option>请选择地市</option>
</select>
<select id="county">
<option>请选择县城</option>
</select>
<script src='test.js'></script>
</body>
</html>
js部分:
var province = document.querySelector("#province");
var city = document.querySelector("#city");
var county = document.querySelector("#county");
//二级联动不用定义你选的省份,直接用省份(key)来决定下面的市(value)值
var provinceName = null;
for (ele in region){
var op = new Option(ele , ele , false , false); //new Option("文本","值",true,true).后面两个true分别表示默认被选中和有效
//console.log(op);
province.options[province.length] = op;
}
var change = function(src){
city.innerHTML = "";
if(src === '请选择省份'){
var op = new Option('请选择地市' , '请选择地市' , false , false);
city.options[0] = op;
}else{
for (index in region[src]){
//console.log(index);
var op = new Option(index , index , false , false);
city.options[city.length] = op;
}
}
//记住选择省份的值
provinceName=src;
countyChange(city.value)
}
var countyChange = function(src2){
county.innerHTML = "";
if(src2 === '请选择地市'){
var op = new Option('请选择县城','请选择县城', false , false);
county.options[0] = op;
}else{
for (index in region[provinceName][src2]){
//console.log(index);
var op = new Option(region[provinceName][src2][index] , region[provinceName][src2][index] , false , false);
county.options[county.length] = op;
}
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# js三级联动菜单
# js三级菜单
# js联动菜单
# JS实多级联动下拉菜单类
# 简单实现省市区联动菜单!
# jsp从数据库获取数据填充下拉框实现二级联动菜单的方法
# js实现简单的联动菜单效果
# JS简单实现多级Select联动菜单效果代码
# 实例详解AngularJS实现无限级联动菜单
# 从QQ网站中提取的纯JS省市区三级联动菜单
# 基于Javascript实现二级联动菜单效果
# JS实现的五级联动菜单效果完整实例
# PHP+JS三级菜单联动菜单实现方法
# JavaScript实现联动菜单特效
# 请选择
# 益阳
# 珠海
# 广州
# 佛山
# 临澧
# 汉寿
# 常德
# 湖南
# 广东
# 再多
# 大家多多
# 应该是
# 级联
# 是一样的
# title
# script
# charset
# utf
# meta
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
jQuery中的100个技巧汇总
JS中对数组元素进行增删改移的方法总结
Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制
Laravel如何自定义错误页面(404, 500)?(代码示例)
bootstrap日历插件datetimepicker使用方法
Laravel怎么使用Intervention Image库处理图片上传和缩放
免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
如何用西部建站助手快速创建专业网站?
详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)
Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤
中山网站推广排名,中山信息港登录入口?
网站制作壁纸教程视频,电脑壁纸网站?
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
如何快速生成橙子建站落地页链接?
电商网站制作价格怎么算,网上拍卖流程以及规则?
Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧
专业商城网站制作公司有哪些,pi商城官网是哪个?
如何用美橙互联一键搭建多站合一网站?
历史网站制作软件,华为如何找回被删除的网站?
如何在宝塔面板创建新站点?
Laravel怎么自定义错误页面_Laravel修改404和500页面模板
Laravel如何实现数据库事务?(DB Facade示例)
如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】
Laravel如何与Docker(Sail)协同开发?(环境搭建教程)
如何在自有机房高效搭建专业网站?
Laravel如何使用Gate和Policy进行授权?(权限控制)
Python3.6正式版新特性预览
网站优化排名时,需要考虑哪些问题呢?
HTML 中如何正确使用模板变量为元素的 name 属性赋值
Win11怎么查看显卡温度 Win11任务管理器查看GPU温度【技巧】
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
图册素材网站设计制作软件,图册的导出方式有几种?
动图在线制作网站有哪些,滑动动图图集怎么做?
Laravel如何设置自定义的日志文件名_Laravel根据日期或用户ID生成动态日志【技巧】
高端建站三要素:定制模板、企业官网与响应式设计优化
linux写shell需要注意的问题(必看)
Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】
详解jQuery中基本的动画方法
如何快速打造个性化非模板自助建站?
Laravel如何使用模型观察者?(Observer代码示例)
微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】
Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)
打开php文件提示内存不足_怎么调整php内存限制【解决方案】
html5的keygen标签为什么废弃_替代方案说明【解答】
Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
,交易猫的商品怎么发布到网站上去?
浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】
奇安信“盘古石”团队突破 iOS 26.1 提权

