JS簡單實(shí)現(xiàn)多級(jí)Select聯(lián)動(dòng)菜單效果代碼
本文實(shí)例講述了JS簡單實(shí)現(xiàn)多級(jí)Select聯(lián)動(dòng)菜單效果代碼。分享給大家供大家參考。具體如下:
JS聯(lián)動(dòng)菜單,簡單代碼實(shí)現(xiàn)JS多級(jí)Select聯(lián)動(dòng)菜單,也就是大家常用的一款菜單,Select聯(lián)動(dòng)狀態(tài)的菜單,網(wǎng)頁上經(jīng)常見到的效果,希望大家能用得上。
運(yùn)行效果截圖如下:
在線演示地址如下:
http://demo.jb51.net/js/2015/js-simple-select-ld-menu-codes/
具體代碼如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>JS聯(lián)動(dòng)下拉框</title> <script language="javascript" > /* ** ==================================== ** 類名:CLASS_LIANDONG_YAO ** 功能:多級(jí)連動(dòng)菜單 ** 作者:YAODAYIZI **/ function CLASS_LIANDONG_YAO(array) { //數(shù)組,聯(lián)動(dòng)的數(shù)據(jù)源 this.array=array; this.indexName=''; this.obj=''; //設(shè)置子SELECT // 參數(shù):當(dāng)前onchange的SELECT ID,要設(shè)置的SELECT ID this.subSelectChange=function(selectName1,selectName2) { //try //{ 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) } } //設(shè)置第一個(gè)SELECT // 參數(shù):indexName指選中項(xiàng),selectName指select的ID this.firstSelectChange=function(indexName,selectName) { this.obj=document.all[selectName]; this.indexName=indexName; this.optionChange(this.indexName,this.obj.id) } // indexName指選中項(xiàng),selectName指select的ID this.optionChange=function (indexName,selectName) { var obj1=document.all[selectName]; var me=this; obj1.length=0; obj1.options[0]=new Option("請(qǐng)選擇",''); for(var i=0;i<this.array.length;i++) { if(this.array[i][1]==indexName) { //alert(this.array[i][1]+" "+indexName); obj1.options[obj1.length]=new Option(this.array[i][2],this.array[i][0]); } } } } </script> </head> <body> <form name="form1" method="post"> <SELECT ID="s1" NAME="s1" > <OPTION selected></OPTION> </SELECT> <SELECT ID="s2" NAME="s2" > <OPTION selected></OPTION> </SELECT> <SELECT ID="s3" NAME="s3"> <OPTION selected></OPTION> </SELECT> <br> <br><br> <SELECT ID="x1" NAME="x1" > <OPTION selected></OPTION> </SELECT> <SELECT ID="x2" NAME="x2" > <OPTION selected></OPTION> </SELECT> <SELECT ID="x3" NAME="x3"> <OPTION selected></OPTION> </SELECT> <SELECT ID="x4" NAME="x4"> <OPTION selected></OPTION> </SELECT> <SELECT ID="x5" NAME="x5"> <OPTION selected></OPTION> </SELECT> </form> </body> <script language="javascript"> //例子1------------------------------------------------------------- //數(shù)據(jù)源 var array=new Array(); array[0]=new Array("華南地區(qū)","根目錄","華南地區(qū)"); //數(shù)據(jù)格式 ID,父級(jí)ID,名稱 array[1]=new Array("華北地區(qū)","根目錄","華北地區(qū)"); array[2]=new Array("上海","華南地區(qū)","上海"); array[3]=new Array("廣東","華南地區(qū)","廣東"); array[4]=new Array("徐家匯","上海","徐家匯"); array[5]=new Array("普托","上海","普托"); array[6]=new Array("廣州","廣東","廣州"); array[7]=new Array("湛江","廣東","湛江"); //-------------------------------------------- //這是調(diào)用代碼 var liandong=new CLASS_LIANDONG_YAO(array) //設(shè)置數(shù)據(jù)源 liandong.firstSelectChange("根目錄","s1"); //設(shè)置第一個(gè)選擇框 liandong.subSelectChange("s1","s2"); //設(shè)置子級(jí)選擇框 liandong.subSelectChange("s2","s3"); //例子2------------------------------------------------------------- //數(shù)據(jù)源 var array2=new Array();//數(shù)據(jù)格式 ID,父級(jí)ID,名稱 array2[0]=new Array("測(cè)試測(cè)試","根目錄","測(cè)試測(cè)試"); array2[1]=new Array("華北地區(qū)","根目錄","華北地區(qū)"); array2[2]=new Array("上海","測(cè)試測(cè)試","上海"); array2[3]=new Array("廣東","測(cè)試測(cè)試","廣東"); array2[4]=new Array("徐家匯","上海","徐家匯"); array2[5]=new Array("普托","上海","普托"); array2[6]=new Array("廣州","廣東","廣州"); array2[7]=new Array("湛江","廣東","湛江"); array2[8]=new Array("不知道","湛江","不知道"); array2[9]=new Array("5555","湛江","555"); array2[10]=new Array("++++","不知道","++++"); array2[11]=new Array("111","徐家匯","111"); array2[12]=new Array("222","111","222"); array2[13]=new Array("333","222","333"); //-------------------------------------------- //這是調(diào)用代碼 //設(shè)置數(shù)據(jù)源 var liandong2=new CLASS_LIANDONG_YAO(array2); //設(shè)置第一個(gè)選擇框 liandong2.firstSelectChange("根目錄","x1"); //設(shè)置子選擇框 liandong2.subSelectChange("x1","x2") liandong2.subSelectChange("x2","x3") liandong2.subSelectChange("x3","x4") liandong2.subSelectChange("x4","x5") </script> </html>
希望本文所述對(duì)大家的JavaScript程序設(shè)計(jì)有所幫助。
- js實(shí)現(xiàn)的全國省市二級(jí)聯(lián)動(dòng)下拉選擇菜單完整實(shí)例
- JS實(shí)多級(jí)聯(lián)動(dòng)下拉菜單類,簡單實(shí)現(xiàn)省市區(qū)聯(lián)動(dòng)菜單!
- javascript實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)下拉框菜單
- jsp從數(shù)據(jù)庫獲取數(shù)據(jù)填充下拉框?qū)崿F(xiàn)二級(jí)聯(lián)動(dòng)菜單的方法
- 省市區(qū)三級(jí)聯(lián)動(dòng)下拉框菜單javascript版
- js實(shí)現(xiàn)簡單的聯(lián)動(dòng)菜單效果
- js實(shí)現(xiàn)select二級(jí)聯(lián)動(dòng)下拉菜單
- 全國省市二級(jí)聯(lián)動(dòng)下拉菜單 js版
- 實(shí)例詳解AngularJS實(shí)現(xiàn)無限級(jí)聯(lián)動(dòng)菜單
- JavaScript+node實(shí)現(xiàn)三級(jí)聯(lián)動(dòng)菜單
相關(guān)文章
JavaScript易錯(cuò)知識(shí)點(diǎn)整理
本文主要對(duì)JavaScript易錯(cuò)知識(shí)點(diǎn)進(jìn)行整理和匯總。需要的朋友可以看下,希望對(duì)大家有所幫助2016-12-12javascript實(shí)現(xiàn)框架高度隨內(nèi)容改變的方法
這篇文章主要介紹了javascript實(shí)現(xiàn)框架高度隨內(nèi)容改變的方法,實(shí)例分析了通過父頁面及內(nèi)容改變框架高度兩種實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07微信小程序模板消息限制實(shí)現(xiàn)無限制主動(dòng)推送的示例代碼
這篇文章主要介紹了微信小程序模板消息限制實(shí)現(xiàn)無限制主動(dòng)推送的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08js實(shí)現(xiàn)時(shí)間顯示幾天前、幾小時(shí)前或者幾分鐘前的方法集錦
這篇文章主要介紹了js實(shí)現(xiàn)時(shí)間顯示幾天前、幾小時(shí)前或者幾分鐘前的方法,實(shí)例匯總分析了時(shí)間顯示格式轉(zhuǎn)換的常用思路與技巧,需要的朋友可以參考下2015-05-05ionic在開發(fā)ios系統(tǒng)微信時(shí)鍵盤擋住輸入框的解決方法(鍵盤彈出問題)
在使用ionic開發(fā)ios系統(tǒng)微信的時(shí)候遇到一個(gè)bug,在填寫表單的時(shí)候鍵盤會(huì)擋住輸入框。下面小編給大家?guī)砹薸onic在開發(fā)ios系統(tǒng)微信時(shí)鍵盤擋住輸入框的解決方法(鍵盤彈出問題),非常不錯(cuò),有需要的朋友參考下吧2016-09-09js實(shí)現(xiàn)自動(dòng)播放勻速輪播圖
這篇文章主要介紹了js實(shí)現(xiàn)自動(dòng)播放勻速輪播圖,帶勻速運(yùn)動(dòng)函數(shù)封裝,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-02-02一個(gè)JS函數(shù)搞定網(wǎng)頁標(biāo)題(title)閃動(dòng)效果
這篇文章主要介紹了使用JS函數(shù)實(shí)現(xiàn)網(wǎng)頁標(biāo)題(title)閃動(dòng)效果的代碼,需要的朋友可以參考下2014-05-05