当前位置:萝卜系统下载站 > 技术开发教程 > 详细页面

JS代码完成三级联动菜单(1)

JS代码完成三级联动菜单(1)

更新时间:2023-06-19 文章作者:未知 信息来源:网络 阅读次数:

编程(Programming)是编定程序的中文简称,就是让计算机代码解决某个问题,对某个计算体系规定一定的运算方式,使计算体系按照该计算方式运行,并最终得到相应结果的过程。为了使计算机能够理解(understand)人的意图,人类就必须将需解决的问题的思路、方法和手段通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步一步去工作,完成某种特定的任务。这种人和计算体系之间交流的过程就是编程。

【实例名称】

菜单三级联动菜单(1)

【实例描述】

三级联动菜单是常用的一种选择方式,通过这种方式,用户可以更方便地选择数据,同时还能降低选择的失误率。本例学习如何制作三级联动菜单,实现方法是普通事件的捕获。

【实例代码】

 

<html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>标题页-本站(www.xue51.com)</title> <STYLE> body { font-size: 11px; font-family: Verdana;background:#ececec;color:#666666;} select { font-size: 11px; font-family: Verdana; vertical-align: middle;margin: 3px;background:#ececec;color:#666666;} </STYLE> <div id="myDiv">&nbsp;</div> <SCRIPT LANGUAGE="JavaScript" DEFER> var cMenu = ["上海","北京","深圳","济南"] var cValue = ["shanghai","beijing","shenzhen","jinan"] var aMenu = [["杨浦区","徐汇区","黄浦区","浦东新区"], ["丰台区","海淀区"],["福田","宝安"],["市中","历下"]] var aValue = [["yp","xh","hp","pd"],["ft","hd"],["ft","ba"],["sz","lx"]] var dMenu = [[["市光新村","工农三村"],["徐汇新村","徐汇高楼"], ["黄浦楼宇","外滩风景"],["浦东地铁","浦东机场"]],[["丰台体育馆","造甲村"], ["亚运村"]],[["莲花山","商报大厦"],["深圳宝安机场","宝安开发区"]], [["山庄宾馆","山庄大酒店"],["千佛山东门","千佛山医院"]]]

var oDiv = document.all.myDiv; var ocMenu = document.createElement("<SELECT name='city'>");   //创建城市列表框 var oaMenu = document.createElement("<SELECT name='cityArea'>");  //创建区域列表框 var odMenu = document.createElement("<SELECT name='cityAddress'>");  //创建地址列表框 with(oDiv)appendChild(ocMenu),appendChild(oaMenu),appendChild(odMenu); //将以上三个列表框添加到div中 createMainOptions(); createSubOptions(0); createSub2Options(0,0);

ocMenu.onchange = function() {//绑定城市下拉框的选择事件     createSubOptions(this.selectedIndex); createSub2Options(this.selectedIndex,oaMenu.selectedIndex);}; oaMenu.onchange = function() {//绑定区域下拉框的选择事件     createSub2Options(ocMenu.selectedIndex,this.selectedIndex);};

function createMainOptions() {     for(var i=0;i<cMenu.length;i++)ocMenu.options[i] = new Option(cMenu[i],cValue[i]);//填充城市列表框内容 } function createSubOptions(j) {     with(oaMenu) {         length=0;     //填充区域列表框内容         for(var i=0;i<aMenu[j].length;i++)oaMenu.options[i] = new Option(aMenu[j][i],aValue[j][i]);     } } function createSub2Options(j,k) {     with(odMenu) {         length=0;    //填充地址列表框内容         for(var i=0;i<dMenu[j][k].length;i++) odMenu.options[i] = new Option(dMenu[j][k][i]);     } } ocMenu[1].selected=true; ocMenu.fireEvent("onchange"); </SCRIPT> </head> <body> </body> </html>

【运行效果】

 三级联动菜单运行效果

【难点剖析】

本例中使用数组定义了3个级别下拉框的内容,然后使用“createElement”动态创建了3个下拉框,并使用“appendChild”将下拉框添加到指定的div层中。为了实现联动效果,还动态设置了这3个下拉框的“onchange”事件。

【源码下载】

为了JS代码的准确性,请点击:三级联动菜单 进行本实例源码下载 


使用编程语言写的程序,由于每条指令都对应计算机一个特定的基本动作,所以程序占用内存少、执行效率高。

温馨提示:喜欢本站的话,请收藏一下本站!

本类教程下载

系统下载排行

网站地图xml | 网站地图html