<html>
<head>
<title>JS三级联动菜单</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf8">
<script language="JavaScript">
function Dsy() {
this.Items = {};
}
Dsy.prototype.add = function(id,iArray)
{
this.Items[id] = iArray;
}
Dsy.prototype.Exists = function(id)
{
if(typeof(this.Items[id]) == "undefined")
{
return false;
}
return true;
}
function change(v)
{
alert("v==="+v);
var str="0";
for(i=0;i<v;i++)
{
alert("for=="+v);
str+=("_"+(document.getElementById(s[i]).selectedIndex-1));
};
//取出所有第1级菜单,并初始化
var ss=document.getElementById(s[v]);
with(ss)
{
length = 0;
options[0]=new Option(opt0[v],opt0[v]); //select 的option第1个值单独取得
if(v && document.getElementById(s[v-1]).selectedIndex>0 || !v)
{
if(dsy.Exists(str))
{
ar = dsy.Items[str];
for(i=0;i<ar.length;i++)
{
options[length]=new Option(ar[i],ar[i]);
}
if(v)options[1].selected = true; //默认选择第2个
}
}
if(++v<s.length)
{
change(v);
}
}
alert("end v==="+v);
}
var dsy = new Dsy();
dsy.add("0",["安徽省","福建省","江西省"]); //一级菜单
dsy.add("0_0",["合肥市","淮南市","亳州市"]); //
dsy.add("0_0_0",["合肥A县","合肥B县","合肥C县"]);
dsy.add("0_0_1",["淮南A县","淮南B县","淮南C县"]);
dsy.add("0_0_2",["亳州A县","亳州B县","亳州C县"]);
dsy.add("0_1",["福州市","福清市","长乐市"]);
dsy.add("0_1_0",["福州1县"]);
dsy.add("0_1_1",["福清1县","福清2县"]);
dsy.add("0_1_2",["长乐1县","长乐2县"]);
dsy.add("0_2",["南昌市","九江市","吉安市","抚州市"]);
dsy.add("0_2_0",["南昌1","南昌2","南昌3"]);
dsy.add("0_2_1",["九江1","九江3","九江2"]);
dsy.add("0_2_2",["吉安1","吉安3","吉安2"]);
dsy.add("0_2_3",["抚州1","抚州3","抚州2"]);
</script>
<script language = JavaScript>
//定义:3个select的Id,options的text值
var s=["s1","s2","s3"];
var opt0 = ["省","市","县"];
function setup() {
for(i=0;i<s.length-1;i++)
//为每个select 定义个onchange方法,用于级联
document.getElementById(s[i]).onchange=new Function("change("+(i+1)+")");
//默认初始化第1级菜单
change(0);
}
</script>
</head>
<body onLoad="setup()" >
<form name="frm">
<select id="s1"> </select>
<select id="s2"> </select>
<select id="s3"> </select>
</form>
</body>
</html>
分享到:
相关推荐
JS三级联动菜单---世界主要国家地区 本篇文章主要介绍了使用JavaScript实现三级联动菜单,涵盖了世界主要国家和地区。下面将对标题、描述、标签和部分内容中的知识点进行详细的解释和说明。 首先, lets talks ...
通过学习和实践这个“世界主要国家地区JS三级联动菜单”,你可以提升在前端开发中的动态交互设计能力,更好地理解和掌握JavaScript在实际项目中的应用。这个资源不仅可以帮助你实现一个功能完备的菜单系统,同时也是...
要实现JavaScript三级联动菜单,我们需要掌握以下几个关键知识点: 1. HTML基础结构:首先,我们需要创建HTML来定义菜单的基本结构,通常包括`<ul>`和`<li>`元素来构建层级关系。例如,一级菜单是顶级`<ul>`,二级...
JS三级联动菜单---世界主要国家地区
综上所述,"商品发布三级联动菜单js代码" 是一种实现商品分类快速导航的前端技术,它通过JavaScript实现了用户友好、高效的交互体验。在实际项目中,结合后台数据支持,可以大大提高商城网站的用户体验和商品检索...
本资源"jQuery基于tnTreeBox.js三级联动菜单多选选中代码.zip"提供了一个实现三级联动菜单并支持多选功能的jQuery代码示例。这个功能在网页设计中十分常见,例如在网站导航、筛选选项或者数据分类中都能找到它的应用...
在前端开发中,"js三级联动...总结,实现js三级联动下拉选择菜单涉及JavaScript基础,DOM操作,事件监听,以及可能的异步数据加载。开发者需要理解这些基本概念并能灵活运用,才能创建出高效且用户友好的前端交互功能。
【jsp+ajax 三级联动菜单】是一个典型的Web开发技术应用场景,它主要利用JavaServer Pages(JSP)和Asynchronous JavaScript and XML(AJAX)来实现动态网页中的数据交互和页面更新。在这个例子中,我们看到的是一个...
"ElementUI三级联动菜单代码" 文件则可能包含了实际的 HTML 和 JavaScript 代码片段,用于直接在项目中应用或参考。通过对这些文件的深入学习和实践,你可以掌握在 Vue 项目中利用 ElementUI 创建三级联动菜单的方法...
在这个场景中,我们讨论的是一个使用JS编写的三级联动菜单。这种菜单通常用于网站的地区选择,例如省、市、区的选择,为用户提供方便的导航体验。 三级联动菜单的工作原理是,当用户在第一级菜单(如省份)中选择一...
在JavaScript编程领域,"js手机三级联动菜单多项选择代码"是一个常见的需求,特别是在移动应用或者响应式网站设计中。这种菜单通常用于实现复杂的选择逻辑,比如在电子商务网站中选择商品分类、属性等。下面我们将...
在IT行业中,尤其是在前端开发领域,"仿淘宝商品发布三级联动菜单"是一个常见的需求,它涉及到用户界面(UI)设计、交互逻辑以及响应式网页技术。这个项目是基于H5(HTML5)编写的,目的是为了创建一个与淘宝网站...
在网页设计中,"三级联动菜单"是一种常见的交互元素,特别是在复杂的网站导航系统中,它能够帮助用户高效地浏览和定位信息。三级联动菜单通常指的是一个包含主菜单、子菜单和孙菜单的多层次下拉菜单结构,用户在选择...
总结来说,ElementUI的三级联动菜单代码是利用Vue.js和ElementUI组件库,实现了一个具有搜索和清除功能的省市区选择器,它提高了用户在选择地址时的交互体验。在实际开发中,开发者需要对Vue.js和ElementUI有深入的...
这个"淘宝商品发布三级联动菜单.zip"文件包含了实现这一功能的源代码,主要依赖于JavaScript库jQuery 1.9.1版本。 jQuery是一个轻量级、高性能的JavaScript库,它简化了HTML文档遍历、事件处理、动画以及Ajax交互。...