JavaScript如何實(shí)現(xiàn)組合列表框中元素移動(dòng)效果
首先給大家說(shuō)下組合框和列表框的區(qū)別:
組合框包括列表框和文本框的功能
文本框:只能輸入數(shù)據(jù)
列表框:只能選擇數(shù)據(jù)
組合框:既能輸入數(shù)據(jù),又能選擇``
應(yīng)用背景:在頁(yè)面中有兩個(gè)列表框,需要把其中一個(gè)列表框的元素移動(dòng)到另一個(gè)列表框 。
實(shí)現(xiàn)的基本思想:
?。?)編寫(xiě)init方法對(duì)兩個(gè)列表框進(jìn)行初始化;
?。?)為body添加onload事件調(diào)用init方法;
?。?)編寫(xiě)move(s1,s2)把s1中選中的選項(xiàng)移到s2;
?。?)編寫(xiě)moveAll(s1,s2)把s1中所有的選項(xiàng)都移到s2.
?。?)為按鈕添加onclick事件。
javascript代碼如下:
<script type="text/javascript" language="javascript"> //對(duì)下拉框信息進(jìn)行初始化 function init() { for (i = ; i < ; i++) { var y = document.createElement("option");//增加一個(gè)元素option y.text = '選項(xiàng)' + i; var x=document.getElementById("s");//根據(jù)ID找到列表框 x.add(y, null); // } } //把選中的選項(xiàng)移到另一邊 function move(s, s) { var index = s.selectedIndex; if (index == -) { alert("沒(méi)有選中值"); return; } s.length++; s.options[s.length - ].value = s.options[index].value; s.options[s.length - ].text = s.options[index].text;//s中當(dāng)前選中的值賦給s的最后一個(gè)元素 s.remove(index);//從s中移除當(dāng)前元素 } //把一邊的完全移到另一邊 function moveAll(s, s) { if (s.length == ) { alert("沒(méi)有可用選擇"); return; } s.length = s.length + s.length; for (var i = ; i < s.length; i++) { s.options[s.length - s.length + i].value = s.options[i].value; s.options[s.length - s.length + i].text = s.options[i].text; } s.length = ; } </script>
<body>代碼:
<body onload="init()"> <table> <tr> <td><select id="s" size= style="width:"></select></td> <td><input type="button" name="moveToRight" value=">" onClick="move(s,s)"> <br> <br> <input type="button" name="moveAllToRight" value=">>" onClick="moveAll(s,s)"> <br> <input type="button" name="moveToLeft" value="<" onClick="move(s,s)"> <br> <br> <input type="button" name="moveAllToLeft" value="<<" onClick="moveAll(s,s)"></td> <td><select id="s" name="s" size= style="width:"></select></td> </tr> </table> </body>
以上內(nèi)容給大家介紹了JavaScript如何實(shí)現(xiàn)組合列表框中元素移動(dòng)效果的相關(guān)知識(shí),希望對(duì)大家有所幫助!
相關(guān)文章
JavaScript實(shí)現(xiàn)簡(jiǎn)單的tab選項(xiàng)卡切換
這篇文章主要介紹了JavaScript實(shí)現(xiàn)簡(jiǎn)單的tab選項(xiàng)卡切換的相關(guān)資料,需要的朋友可以參考下2016-01-01ExtJs使用自定義插件動(dòng)態(tài)保存表頭配置(隱藏或顯示)
這篇文章主要介紹了ExtJs使用自定義插件動(dòng)態(tài)保存表頭配置(隱藏或顯示) ,需要的朋友可以參考下2018-09-09js實(shí)現(xiàn)按鈕顏色漸變動(dòng)畫(huà)效果
這篇文章主要介紹了js實(shí)現(xiàn)按鈕顏色漸變動(dòng)畫(huà)效果的方法,涉及javascript鼠標(biāo)事件及頁(yè)面表單元素樣式的動(dòng)態(tài)操作技巧,需要的朋友可以參考下2015-08-08拖動(dòng)Html元素集合 Drag and Drop any item
拖動(dòng)Html元素集合 Drag and Drop any item...2006-12-12淺談js中同名函數(shù)和同名變量的執(zhí)行問(wèn)題
下面小編就為大家?guī)?lái)一篇淺談js中同名函數(shù)和同名變量的執(zhí)行問(wèn)題。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02JS實(shí)現(xiàn)加載和讀取XML文件的方法詳解
這篇文章主要介紹了JS實(shí)現(xiàn)加載和讀取XML文件的方法,結(jié)合實(shí)例形式分析了javascript針對(duì)xml文件的加載與讀取相關(guān)實(shí)現(xiàn)步驟與操作技巧,需要的朋友可以參考下2017-04-04JavaScript實(shí)現(xiàn)點(diǎn)擊改變圖片形狀(transform應(yīng)用)
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)點(diǎn)擊改變圖片形狀,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-04-04