javascript实现级联菜单

基于jQuery实现级联下拉菜单(jQuery JavaScript) 级联下拉菜单是一种常见的用户界面组件,它允许用户根据前一个下拉菜单的选择来动态加载下一个下拉菜单的选项。在本文中,我们将使用jQuery和JavaScript来实现一个简单的级联下拉菜单。我们将使用jQuery的事件处理函数来监听第一个下拉菜单的选择变化,并在选择变化时动态加载第二个下拉菜单的选项。用户在选择第一个下拉菜单的选项时,第二个下拉菜单的选项会根据选择的值进行动态加载。第一个下拉菜单用于选择一级选项,第二个下拉菜单将根据一级选项的选择进行动态加载。在上面的代码中,我们定义了一个名为。 阅读详情
 级联菜单,就是有两个select选项,选中其中一个后,另外一个选项也跟着变化。
 具体实现如下:
 index.html文件如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE>test </TITLE>
  <META NAME="Generator" CONTENT="EditPlus">
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Descrīption" CONTENT="">
  <scrīpt type="text/javascrīpt" src="ajax/function.js"></scrīpt>
 </HEAD>

 <BODY ōnload ="init();">
       <select id='prov' name ='prov' ōnchange="change_province(this.value);"></select>
    <select id='city' name = 'city' ></select>   
 </BODY>
</HTML>

js文件如下:

/*
 +---------------------------------------- 
 | 级联菜单的实现
 +----------------------------------------
 |
 |
 | steven cheng @2007 9 6
 | steven@wodingg.com
 +----------------------------------------
*/


/*
  下面是全部省份和城市的定义数组
*/
var p =new Array();
p[0] = "选择省份";
p[1] = "北京";
p[2] = "上海";
p[3] = "天津";
p[4] = "重庆";
p[5] = "河北";
p[6] = "山西";
p[7] = "内蒙古 ";
p[8] = "辽宁 ";
p[9] = "吉林";
p[10] = "黑龙江 ";
p[11] = "江苏";
p[12] = "浙江";
p[13] = "安徽";
p[14] = "福建";
p[15] = "江西";
p[16] = "山东";
p[17] = "河南";
p[18] = "湖北";
p[19] = "湖南";
p[20] = "广东";
p[21] = "广西";
p[22] = "海南";
p[23] = "四川";
p[24] = "贵州";
p[25] = "云南";
p[26] = "西藏";
p[27] = "陕西";
p[28] = "甘肃";
p[29] = "宁夏";
p[30] = "青海";
p[31] = "新疆";
p[32] = "香港";
p[33] = "澳门";
p[34] = "台湾";

var c =new Array();
c[0] =new Array("选择城市");
c[1] =new Array("东城","西城","崇文","宣武","朝阳","丰台","石景山","海淀","门头沟","房山","通州","顺义","昌平","大兴","平谷","怀柔","密云","延庆");
c[2] =new Array("黄浦","卢湾","徐汇","长宁","静安","普陀","闸北","虹口","杨浦","闵行","宝山","嘉定","浦东","金山","松江","青浦","南汇","奉贤","崇明");
c[3] =new Array("和平","东丽","河东","西青","河西","津南","南开","北辰","河北","武清","红挢","塘沽","汉沽","大港","宁河","静海","宝坻","蓟县");
c[4] =new Array("万州","涪陵","渝中","大渡口","江北","沙坪坝","九龙坡","南岸","北碚","万盛","双挢","渝北","巴南","黔江","长寿","綦江","潼南","铜梁","大足","荣昌","壁山","梁平","城口","丰都","垫江","武隆","忠县","开县","云阳","奉节","巫山","巫溪","石柱","秀山","酉阳","彭水","江津","合川","永川","南川");
c[5] =new Array("石家庄","邯郸","邢台","保定","张家口","承德","廊坊","唐山","秦皇岛","沧州","衡水");
c[6] =new Array("太原","大同","阳泉","长治","晋城","朔州","吕梁","忻州","晋中","临汾","运城");
c[7] =new Array("呼和浩特","包头","乌海","赤峰","呼伦贝尔盟","阿拉善盟","哲里木盟","兴安盟","乌兰察布盟","锡林郭勒盟","巴彦淖尔盟","伊克昭盟");
c[8] =new Array("沈阳","大连","鞍山","抚顺","本溪","丹东","锦州","营口","阜新","辽阳","盘锦","铁岭","朝阳","葫芦岛");
c[9] =new Array("长春","吉林","四平","辽源","通化","白山","松原","白城","延边");
c[10] =new Array("哈尔滨","齐齐哈尔","牡丹江","佳木斯","大庆","绥化","鹤岗","鸡西","黑河","双鸭山","伊春","七台河","大兴安岭");
c[11] =new Array("南京,镇江,苏州,南通,扬州,盐城,徐州,连云港,常州,无锡,宿迁,泰州,淮安");
c[12] =new Array("杭州","宁波","温州","嘉兴","湖州","绍兴","金华","衢州","舟山","台州","丽水");
c[13] =new Array("合肥","芜湖","蚌埠","马鞍山","淮北","铜陵","安庆","黄山","滁州","宿州","池州","淮南","巢湖","阜阳","六安","宣城","亳州");
c[14] =new Array("福州","厦门","莆田","三明","泉州","漳州","南平","龙岩","宁德");
c[15] =new Array("南昌市","景德镇","九江","鹰潭","萍乡","新馀","赣州","吉安","宜春","抚州","上饶");
c[16] =new Array("济南","青岛","淄博","枣庄","东营","烟台","潍坊","济宁","泰安","威海","日照","莱芜","临沂","德州","聊城","滨州","菏泽");
c[17] =new Array("郑州","开封","洛阳","平顶山","安阳","鹤壁","新乡","焦作","濮阳","许昌","漯河","三门峡","南阳","商丘","信阳","周口","驻马店","济源");
c[18] =new Array("武汉","宜昌","荆州","襄樊","黄石","荆门","黄冈","十堰","恩施","潜江","天门","仙桃","随州","咸宁","孝感","鄂州");
c[19] =new Array("长沙","常德","株洲","湘潭","衡阳","岳阳","邵阳","益阳","娄底","怀化","郴州","永州","湘西","张家界 ");
c[20] =new Array("广州","深圳","珠海","汕头","东莞","中山","佛山","韶关","江门","湛江","茂名","肇庆","惠州","梅州","汕尾","河源","阳江","清远","潮州","揭阳","云浮");
c[21] =new Array("南宁","柳州","桂林","梧州","北海","防城港","钦州","贵港","玉林","南宁地区","柳州地区","贺州","百色","河池");
c[22] =new Array("海口","三亚");
c[23] =new Array("成都","绵阳","德阳","自贡","攀枝花","广元","内江","乐山","南充","宜宾","广安","达川","雅安","眉山","甘孜","凉山","泸州");
c[24] =new Array("贵阳","六盘水","遵义","安顺","铜仁","黔西南","毕节","黔东南","黔南");
c[25] =new Array("昆明","大理","曲靖","玉溪","昭通","楚雄","红河","文山","思茅","西双版纳","保山","德宏","丽江","怒江","迪庆","临沧");
c[26] =new Array("拉萨","日喀则","山南","林芝","昌都","阿里","那曲");
c[27] =new Array("西安","宝鸡","咸阳","铜川","渭南","延安","榆林","汉中","安康","商洛");
c[28] =new Array("兰州","嘉峪关","金昌","白银","天水","酒泉","张掖","武威","定西","陇南","平凉","庆阳","临夏","甘南");
c[29] =new Array("银川","石嘴山","吴忠","固原");
c[30] =new Array("西宁","海东","海南","海北","黄南","玉树","果洛","海西");
c[31] =new Array("乌鲁木齐","石河子","克拉玛依","伊犁","巴音郭勒","昌吉","克孜勒苏柯尔克孜","博尔塔拉","吐鲁番","哈密","喀什","和田","阿克苏 ");
c[32] =new Array("香港特别行政区 ");
c[33] =new Array("澳门特别行政区 ");
c[34] =new Array("台北","高雄","台中","台南","屏东","南投","云林","新竹","彰化","苗栗","嘉义","花莲","桃园","宜兰","基隆","台东","金门","马祖","澎湖");

/*
* 将省份添加到slect中去
*/

function set_pro_select1(so) {
 ///alert(123);
    for (var i = 0, n = p.length; i < n; i++ ) {
        var ōpt = document.createElement('option');
        opt.text = p[i];
        opt.value = i;
        // 有些浏览器不支持 options 属性的 add 方法,
        // 但支持 DOM 的 appendChild 方法(比如:Konqueror)
        if (so.options.add) {
            so.options.add(opt);
        }
        else {
            so.appendChild(opt);
        }
    }
}

/*
*将对应的城市添加到第二个select中去
*/
function set_city_select1(so,pid){
 for(var i = 0,n = c[pid].length;i < n;i++){
        var ōpt=document.createElement('option');
  opt.text = c[pid][i];
  opt.value = i;
  
  if (so.options.add) {
            so.options.add(opt);
        }
        else {
            so.appendChild(opt);
        }
 }
}

/*
*清除城市select中的内容
*/
function clear_select(so) {
    for (var i = so.options.length - 1; i > -1; i--) {
        // 有些浏览器不支持 options 属性的 remove 方法,
        // 但支持 DOM 的 removeChild 方法(比如:Konqueror)
        if (so.options.remove) {
            so.options.remove(i);
        }
        else {
            so.removeChild(so.options[i]);
        }
    }
}

/*
*改变省份
*/
function change_province(pid) {
    set_city_select(pid);
}

/*
   用来初始化省份的菜单
*/
function init(){
 var so=document.getElementById('prov');
    set_pro_select1(so);
 change_province(0);
}

function set_city_select(pid){
 var so = document.getElementById('city');
 clear_select(so);
 set_city_select1(so,pid);
}

代码里有注释,就不在这里详细讲了。只是给大家一个参考而已。

JSP+JavaScript二级级联下拉菜单 在使用JSP JavaScript过程中有很多的技巧与实现,那么如何构建二级级联下拉菜单呢,本文将会向你做一个源码上的介绍。 立即下载

相关推荐

javascript 级联菜单

简单的javascript 级联菜单 动态的可以使用ajax 稍后上传

JavaScript实现select下拉菜单省份和城市的级联菜单

使用JavaScript实现数组与select标签结合使用对省份及对应的城市的显示

syy的博客 3262

JavaScript下拉菜单

JavaScript下拉菜单JavaScript下拉菜单JavaScript下拉菜单JavaScript下拉菜单JavaScript下拉菜单JavaScript下拉菜单JavaScript下拉菜单

使用javascript生成级联菜单

使用javascript生成级联菜单 在做某些管理系统时,大多数情况都会用到级联菜单,可以对项目中的各个模块进行组织和管理,同时每个模块一般会有多个页面,所以针对这些情况就要生成指定功能的菜单了。下面是基于jQuery的简单的级联菜单。 html中的布局采用如下结构: <ul id="rootMenu"> <li> <div style="background: #0000FF;">新闻 </div>

m0_62297608的博客 497

JavaScript实现级联菜单的方法

主要介绍了JavaScript实现级联菜单的方法,涉及javascript页面元素操作的相关技巧,需要的朋友可以参考下

HDMI2.1/eDP TX接口设计:

HDMI2.1向下兼容,HDMI2.1工作在FRL模式,HDMI2.0工作在TMDS模式。因此采用AC耦合电压模式驱动器。一般采用220nF,封装建议0201。,但是协议要求,往 CEC 管脚通过 27K 电阻加 3.3V 电压,漏电不允许超过。NOTE:如果只需要支持 HDMI2.0 及以下模式时, MOS管也不能省掉。DDC_SCL/DDC_SDA 协议规定是。HDMI2.0模式:配置为高,MOS导通。HDMI2.1模式:配置为低,MOS不导通。,必须增加电平转换电路。形成直流偏置,大约3V。

qq_40010777的博客 7856

Javascript(四)javascript实现级联菜单

要实现这个功能,我们需要做三个步骤: 定义省和对应市的数据结构。 利用省份下拉框的选项改变事件onChange。 根据用户选择的省份,动态添加城市下拉框的值。 1、定义省和对应市的数据结构 这里采用数组的方式定义,为了方便展示功能,这里仅仅定义几个省和市。 //初始化所有的信息 var cityarr=new Array(3); cityarr["广东省"]=["...

一枝韩独秀的博客 2697

2025最新OSM中国矢量数据保姆级下载指南(附百度网盘链接)

本文提供2025年OSM中国矢量数据的保姆级下载与使用指南。详细介绍了通过Geofabrik镜像站、QGIS插件及第三方平台获取数据的多种途径,重点解析了Shapefile格式数据的结构、WGS84坐标系特性,并指导进行格式转换与基础GIS应用,帮助用户高效合规地获取并利用这份开放地理数据资源。

weixin_29228781的博客 873

JS实现级联菜单

JS实现级联菜单JS实现级联菜单使用vscode快速创建html1.在一个目录中新建html文件2.填写文件名3.快速初始化html设置建议下拉框1.创建三个下拉框2.预览html通过js对下拉框进行联动操作1.在body标签下方添加script标签2.添加变量,将数组赋值给变量3.通过DOM获得网页中元素4.创建方法操作第二和第三个下拉框5.使用for in循环遍历第一个数组,并初始化第一个select下拉框6.通过时间监听方法初始化第二、第三个select下拉框根据下拉选择改变标题1.新增一个变量获取标

qq_23390957的博客 3065

VisDrone2019数据集实战:从下载到YOLO格式转换的完整指南

本文提供了一份完整的VisDrone2019数据集实战指南,详细介绍了从数据集下载、理解其独特的标注格式,到转换为YOLO模型可直接训练格式的全过程。通过清晰的代码示例和步骤讲解,帮助读者掌握处理复杂无人机视觉数据集的核心技能,为基于YOLO的目标检测模型训练做好准备。

weixin_29165725的博客 384

cartographer 添加二维码、apritag码作为路标点,测试位置关系

这里记录一下cartographer里面的路标点是如何转换的,首先你要知道路标点在相机坐标系的位置(很多二维码读码器的关系恰好相反,是相机在二维码的坐标系),然后要知道相机坐标系和小车坐标系(一般为base_link)之间的关系。中间用tf_broadcaster_发出来便于查看是否设置正确 void Node::HandleLandmarkMessage( const int trajectory_id, const std::string& sensor_id, const ca

南北粉面馆 2431

实现二级联动菜单:从原生JavaScript到Vue.js

通过上述两个示例,我们分别使用原生JavaScript和Vue.js实现了二级联动菜单。原生JavaScript方法虽然简单,但代码较为繁琐,而Vue.js方法则更加简洁和易于维护。Vue.js的响应式数据和事件绑定机制使得代码更加清晰和高效。希望本文能帮助你更好地理解和实现二级联动菜单。如果你有任何疑问或建议,欢迎在评论区留言交流。

weixin_66708577的博客 463

UI自动化控制PC端微信获取当前群聊的群友列表

在一个月前,某个群友在获取整个群的群友信息时遇到了一点问题: 对整个群进行群友数据获取经测试确实有点棘手,下面我将我的解决过程公布给大家。 基础教程详见: https://blog.youkuaiyun.com/as604049322/article/details/121391639 人工打开要抓取的群聊窗口后,首先获取微信窗口并点击聊天信息按钮: import uiautomation as auto auto.uiautomation.SetGlobalSearchTimeout(1) wechatWind

小小明-代码实体的专栏 3万+

javascript原生实现二级联动下拉菜单

JS原生实现二级联动菜单(市/区县) ???? Java学习路线:搬砖工的Java学习路线 ???? 作者:程序员小王 ???? 程序员小王的博客:https://www.wolai.com/wnaghengjie/ahNwvAUPG2Hb1Sy7Z8waaF ???? 扫描主页左侧二维码,加我微信 一起学习、一起进步 ???? 欢迎点赞 ???? 收藏 ⭐留言 ???? 一、下拉列表二级/三级联动示意图 二、js中操作下拉列表的相关属性 selObj.value 获取下拉列表中选中项的值 selObj

程序员小王的博客 9205

19、英国模式:银行体系的演变与现代金融架构

本文深入探讨了英国银行体系从专业化向全能银行的演变过程,分析了自律监管模式的优劣,并解析了围栏制度对金融稳定的影响。同时,文章还介绍了信用合作社、建筑协会和投资银行的角色与转型,全面展示了英国金融体系的多样性与复杂性,以及其在全球金融市场中的重要作用。

embedding5hiker的博客 104

刚体转动欧拉方程:从理论到卫星姿态控制的实践

刚体转动欧拉方程是描述刚体旋转运动的基本动力学方程,在卫星姿态控制、机器人学、航空航天等领域有着广泛应用。本文将详细讲解欧拉方程的物理概念、数学推导、数值计算方法,并重点分析其在卫星姿态控制系统中的具体应用。

ScilogyHunter的博客 641

php js 二级联动_用php+javascript实现二级级联菜单的制作

用php+javascript实现二级级联菜单的制作更新时间:2008年05月06日 23:25:12 作者:二级级联菜单在我去年的时候就用asp+js做过,而现在忽然拿出来再做的时候我发现我忘记了,而且原来用asp写的程序都找不到了,真晕[emot]sweat[/emot],于是到网上搜,找了半天,我发现网上的写法各异,而且都特别复杂,这么一个二级级联菜单,有必要弄这么复杂吗?于是自己想重新...

weixin_36018748的博客 232

52-Halcon-- smooth_object_model_3d函数功能(滑处理3D对象模型)

Halcon中smooth_object_model_3d算子详解 该算子用于3D模型平滑处理,提供三种算法:'laplacian'(快速去噪)、'taubin'(高质量防收缩)和'low_pass'(频域滤波)。核心参数包括迭代次数(默认5)、平滑强度(0-1)和边缘保护选项。典型应用包括扫描数据去噪、CAD模型光顺和逆向工程优化。支持自适应平滑、结合模型简化等高级技巧,并可通过分块处理优化大型模型性能。参数组合需根据具体场景选择,如快速去噪推荐拉普拉斯方法(5次迭代,强度0.3),特征保持推荐低通滤波(

weixin_45590420的博客 871

JavaScript实现二级联动下拉菜单

最近学习前端js,做了一个二级联动下拉菜单。二级下拉菜单的内容随着一级下拉菜单选项的更改而更改。菜单的内容是手动存在js的数组里的,随便写了几个数据。 效果图: 实现源码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> ...

MistyWood的博客 1万+

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

javascript实现下拉条联动_js实现select二级联动下拉菜单

本文实例为大家分享了js实现select二级联动下拉菜单,供大家参考,具体内容如下String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%> New Docum...

weixin_26759093的博客 1720

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

JavaScript之AJAX实现二级联动菜单(jsp+js+servlet

请选择大师作品 2.2、1.js文件源码如下: var xhr; //根据不同浏览器创建xhr对象的函数 function creatXHR () { if (typeof(XMLHttpRequest)!=“undefined”) { return new XMLHttpRequest(); //针对IE7及四大浏览器 }else if (typeof ActiveXObject !=“undefined”) { if (typeof arguments.callee..

m0_66789766的博客 1137

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

用js实现的级联菜单

用js实现的级联菜单   New Document var city=[  ["北京","天津","上海","重庆"],  ["南京","苏州","南通","常州"],  ["福州","福安","龙岩","南平"],  ["广州","潮阳","潮州","澄海"],  ["兰州","白银","定西","敦煌"]  ]; function getCity(){

蝈蝈 1021

html多级下拉菜单链接代码,js实现网页多级级联菜单代码

本文实例讲述了js实现网页多级级联菜单。分享给大家供大家参考。具体如下:这是大家在网页上经常会见到的级联菜单特效,不过这一个代码是由JS来实现,将级联菜单中的内容保存在了JS数组中,为了页面美观,本次还美化了一下表格边框,整体看上去更和谐实用了,多级的下拉菜单对网页设计来说比较实用。运行效果如下图所示:在线演示地址如下:具体代码如下:/p>"http://www.w3.org/TR/html...

weixin_36279637的博客 509

php+js实现二级联动下拉菜单(结合mysql数据库)_php和javascript实现二级联动下拉菜单...

数据库test保存省的数据表province:id,p_name;保存市的数据表city:id,p_id(对应的省的名字),c_name;===============================分割线=====================程序原理:首先用php语句,把省份的信息都取出来放到一个数组$forum_data[]中,然后把市的信息放到另外一个数组$forum_data2[]中。...

weixin_39577908的博客 454
上一篇: Windows XPE 安装
下一篇: tomcat 5.5 动态加载类
techyang
博客等级 码龄22年 12粉丝 27原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值