级联 菜单

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>地域导航</title>

<link href="zui.min.css" rel="stylesheet">

</head>
<body>
<!--菜单-->
<div id="div1">
<ul class="tree" data-ride="tree" id="tree">

</ul>
</div>

<!--级联-->
<div class="t1">
<div class="left f">地区</div>
<div>
<select name="province" id="province"> <!--省-->
</select>
<select name="city" id="city"> <!--市-->
</select>
<select name="county" id="county"> <!--县-->
</select>
</div>
</div>

</body>

<script type="text/javascript">
//方法二

var diyu=[
{
"DIST_CODE": "13",
"AREA_NAME": "北京省",
"AREA_LEVEL": "0",
"PARENTCODE": "",
"PARENT_NAME": ""
},
{
"DIST_CODE": "1301",
"AREA_NAME": "一环市",
"AREA_LEVEL": "1",
"PARENTCODE": "13",
"PARENT_NAME": "北京省"
},
{
"DIST_CODE": "130101",
"AREA_NAME": "一环县",
"AREA_LEVEL": "2",
"PARENTCODE": "1301",
"PARENT_NAME": "一环市"
},
{
"DIST_CODE": "14",
"AREA_NAME": "广东省",
"AREA_LEVEL": "0",
"PARENTCODE": "",
"PARENT_NAME": ""
},
{
"DIST_CODE": "1401",
"AREA_NAME": "深圳市",
"AREA_LEVEL": "1",
"PARENTCODE": "14",
"PARENT_NAME": "广东省"
},
{
"DIST_CODE": "140101",
"AREA_NAME": "南山区",
"AREA_LEVEL": "2",
"PARENTCODE": "1401",
"PARENT_NAME": "深圳市"
},
{
"DIST_CODE": "15",
"AREA_NAME": "湖北省",
"AREA_LEVEL": "0",
"PARENTCODE": "",
"PARENT_NAME": ""
},
{
"DIST_CODE": "1501",
"AREA_NAME": "武汉市",
"AREA_LEVEL": "1",
"PARENTCODE": "15",
"PARENT_NAME": "湖北省"
},
{
"DIST_CODE": "150101",
"AREA_NAME": "武昌县",
"AREA_LEVEL": "2",
"PARENTCODE": "1501",
"PARENT_NAME": "武汉市"
}
]

function CLASS_LIANDONG_YAO(array){
//数组,联动的数据源
this.array=array;
this.indexName=‘‘;
this.obj=‘‘;
//设置子SELECT
// 参数:当前onchange的SELECT ID,要设置的SELECT ID
this.subSelectChange=function(selectName1,selectName2){
var obj1=document.all[selectName1];
var obj2=document.all[selectName2];
var objName=this.toString();
var me=this;
obj1.onchange=function(){
me.optionChange(this.options[this.selectedIndex].value,obj2.id)
}
}
//设置第一个SELECT
// 参数:indexName指选中项,selectName指select的ID
this.firstSelectChange=function(indexName,selectName){
this.obj=document.all[selectName];
this.indexName=indexName;
this.optionChange(this.indexName,this.obj.id)
} // indexName指选中项,selectName指select的ID
this.optionChange=function (indexName,selectName){
var obj1=document.all[selectName];
var me=this;
obj1.length=0;
obj1.options[0]=new Option("请选择",‘‘);
for(var i=0;i<this.array.length;i++){
if(this.array[i][1]==indexName){
obj1.options[obj1.length]=new Option(this.array[i][2],this.array[i][0]);
}
}
}
}

//var sheng = new Array();
//var shi=new Array();
//var xian=new Array();

//var sen=0;
//var si=0;
//var x=0;
var array = new Array();
for(var i=0;i<diyu.length;i++){
if(diyu[i].AREA_LEVEL== 0){
array[i]=new Array(diyu[i].AREA_NAME,"根目录",diyu[i].AREA_NAME);
//sheng[sen]=diyu[i];
//sen++;
}else if(parseInt(diyu[i].AREA_LEVEL)== 1){
array[i]=new Array(diyu[i].AREA_NAME,diyu[i].PARENT_NAME,diyu[i].AREA_NAME);
//shi[si]=diyu[i];
//si++;
}else if(parseInt(diyu[i].AREA_LEVEL)== 2){
array[i]=new Array(diyu[i].AREA_NAME,diyu[i].PARENT_NAME,diyu[i].AREA_NAME);
//xian[x]=diyu[i];
//x++;
}
}

console.log(array);

//这是调用代码
var liandong=new CLASS_LIANDONG_YAO(array) //设置数据源
liandong.firstSelectChange("根目录","province"); //设置第一个选择框
liandong.subSelectChange("province","city"); //设置子级选择框
liandong.subSelectChange("city","county");

</script>
<script src="jquery.min.js"></script>
<script src="zui.min.js"></script>
<script src="U.js"></script>

<script src="U_2.js"></script>
<script language="javascript">
setup();
</script>
</html>

时间: 2024-08-12 02:57:29

级联 菜单的相关文章

级联菜单

利用二维数组和jQuery实现级联菜单,代码如下: 1.html代码 <div class="form_class"> <label>地址</label> <select name="province" id="province></select> <select name="city" id="city"></select> <

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

[伪] 级联菜单,两级菜单 这段时间需要做一个类似效果的一个菜单样式,所以就查了各种文档,各种百度各种搜索,的确也是搜到了不少的第三方组件,比如(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