级联菜单

利用二维数组和jQuery实现级联菜单,代码如下:

1.html代码

<div class="form_class">
      <label>地址</label>
       <select name="province" id="province></select>
       <select name="city" id="city"></select>
 </div>

2.javascript代码

//第二级菜单数组
var city0=["东城区","西城区","崇文区","宣武区","朝阳区","丰台区","石景山区","海淀区","门头沟区","房山区","通州区","顺义区", "昌平区","大兴区","怀柔区","平谷区","密云县","延庆县","其他"],
    city1=["黄浦区","卢湾区","徐汇区","长宁区","静安区","普陀区","闸北区","虹口区","杨浦区","闵行区","宝山区","嘉定区","浦东新区","金山区","松江区"," 青浦区","南汇区","奉贤区","崇明县","其他"],
    city2=["广州市","清远市","韶关市","河源市","梅州市","潮州市","汕头市","揭阳市","汕尾市","惠州市","东莞市","深圳市","珠海市","中山市","江门市","佛山市","肇庆市","云浮市","阳江市","茂名市","湛江市","其他"],
    city3=["武汉市","十堰市","襄樊市","荆门市","孝感市","黄冈市","鄂州市","黄石市","咸宁市","荆州市","宜昌市","随州市","恩施土家族苗族自治州","仙桃市","天门市","潜江市","神农架林区","其他"];

//第一级菜单数组
var pro=["北京市","上海市","广东省","湖北省"];
//二维数组
var city=[city0,city1,city2,city3];

//第二级菜单
function cityList(num){
            $("#city").html("");
            for(var i=0,len=city[num].length;i<len;i++){
                var citys=$("#city").html();
                $("#city").html(citys+"<option>"+city[num][i]+"</option>");
            };
        };
        cityList(0);

       //第一级菜单
        function proList(){
            for(var i=0,len=pro.length;i<len;i++){
                var pros=$("#province").html();
                $("#province").html(pros+"<option>"+pro[i]+"</option>");
            };
        };
        proList();

        //第一级菜单change事件
        $("#province").change(function(){
            var val=$(this).val();
            var num=pro.indexOf(val);
            cityList(num);
        });    

3.效果图如下:

时间: 2024-12-26 22:01:44

级联菜单的相关文章

[伪] 级联菜单,两级菜单

[伪] 级联菜单,两级菜单 这段时间需要做一个类似效果的一个菜单样式,所以就查了各种文档,各种百度各种搜索,的确也是搜到了不少的第三方组件,比如(CascadingMenuViewLib)就是其中一个,但是,我脑子笨,研究了3天左右的时间,改不成我需要得样子,So...我用我自己的方式,实现了这个效果(对了,还没有完全实现,因为TextView被点中的样式我还没有设置,不过这都是小事情了..) 在这里,我提供一个思路,代码很简单,当然,我也会附一些上来,好的,我首先说一下思路 首先,我们的xml

JS实战 &#183; 级联菜单选择省份和城市(两种)

DOM编程步骤.思路 1.定义界面: 通过html标签将数据进行封装: 2.定义一些静态样式: 利用css: 3.需要动态地完成的和用户的交互: a:明确事件源: b:明确事件,将事件注册到事件源上: c:通过JS的函数对象对事件进行封装: d:在处理过程中需要明确处理区域. 代码一如下: <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta htt

Excel操作之级联菜单

设置级联菜单主要用的是excel的数据验证功能.下面以简单的设置城市选择框为例: 1.准备好数据 2.给所有省份起个名称(例如:省份),然后同样方法给每个省份所对应的城市以其省份命名,(例如:南京.苏州的命名是江苏省) 3.设置省份下拉框,数据--数据验证--数据验证,验证条件选择序列,来源设置为=省份 设置完成后的效果如下: 4.设置二级菜单,同样数据--数据验证--数据验证,验证条件选择序列,这里的来源需要用到一个函数,来源设置为=INDIRECT(A7),A7是前面省份所在的单元格,如图:

通达OA 太牛了!工作流表单设计中级联菜单原来可以这样实现(图文)

在做程序时,经常会有使用级联菜单这样的情况,比如选择行政区域这样的时候.使用通达的表单设计器来做这个需求时,一般都是怎样研究使用js来做级联菜单,略显复杂.今天突然发现原来通达在实现这个需求时居然有特别简单的实现方法,这里一块看一下. 做完的效果,看这里: 实现过程: 先添加一个下拉列表,关键地方就是在"关联子菜单名称"这里写上关联的下级菜单名字. 第二级菜单设置: 第三级菜单设置: 版权声明:本文为博主原创文章,未经博主允许不得转载.

js实现级联菜单(没有后台)

html代码: <!-- js级联菜单 --> <div id="cascMenu"> <select id="select" onchange="getLocal(this.selectedIndex)"> <option>请选择</option><!-- selectedIndex=0 --> <option>北京</option><!--

使用json方式实现省市两级下拉级联菜单[原创]

本文为博主原创,转载请注明. 首先看一下实现后的效果图: 当然,要完成这个实验,mysql必须与数据库连接,这里选用navicat for mysql这款软件,它与mysql的契合度是很高的,配置环境不多赘述,注意修改一下php的配置文件php.ini文件,将mysql.dll前面的那个“;”去掉,不然总会报数据库连接函数的错. 将以上配置好后就进入代码阶段了,闲话不多说,直接上代码: //2-7-3.php:<!DOCTYPE html> <html lang="en&quo

ios开发级联菜单(利用父子控制器--两个菜单封装为两个子控制器来实现)

一:1:级联菜单可以使用两个tableView来实现,也可以利用父子控制器,两个控制器来实现,根视图控制器作为两个控制器的父控制器,来管理两个子控制器.2:将左右菜单分别交给两个控制器去管理,对于一些复杂的业务逻辑,涉及大量回调操作,业务逻辑也要相对复杂,则不建议采取封装成view去处理,最好还是利用一个控制器去管理其内部复杂的业务逻辑,具体做法就是:利用父子控制器,将子控制器交由父控制器去管理,将子控制器的view添加到父控制器的view上.效果如图: 二:代码 1:根控制器代码:添加两个子控

Android Spinner级联菜单实现

在开发中我们经常要遇到类似Spinner级联菜单的效果,下面就是Spinner级联菜单效果的实现 activity_main.xml 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:layout_width="fill

前台JS(Jquery)调用后台方法 无刷新级联菜单示例

前台用AJAX直接调用后台方法,老有人发帖提问,没事做个示例 下面是做的一个前台用JQUERY,AJAX调用后台方法做的无刷新级联菜单 http://www.dtan.so CasMenu.aspx页面: [html] view plaincopyprint? <%@ Page Language="C#" AutoEventWireup="true" CodeFile="CasMenu.aspx.cs" Inherits="_De