JavaScript實(shí)現(xiàn)兩個select下拉框選項(xiàng)左移右移
更新時間:2017年03月09日 08:45:18 作者:yuxingxing1988
這篇文章主要介紹了JavaScript實(shí)現(xiàn)兩個select下拉框選項(xiàng)左移右移功能,js實(shí)現(xiàn)下拉框元素互相移動,具有一定的參考價值,感興趣的小伙伴們可以參考一下
今天沒事用js寫了一個用兩個select下拉框之間能互相移動元素的小程序,剛剛才開始學(xué)javascript還有很多優(yōu)化的地方。
Javascript代碼
<script type="text/javascript"> /**選中的元素向右移動**/ function moveRight() { //得到第一個select對象 var selectElement = document.getElementById("first"); var optionElements = selectElement.getElementsByTagName("option"); var len = optionElements.length; if(!(selectElement.selectedIndex==-1)) //如果沒有選擇元素,那么selectedIndex就為-1 { //得到第二個select對象 var selectElement2 = document.getElementById("secend"); // 向右移動 for(var i=0;i<len ;i++) { selectElement2.appendChild(optionElements[selectElement.selectedIndex]); } } else { alert("您還沒有選擇需要移動的元素!"); } } //移動所有的到右邊 function moveAll() { //得到第一個select對象 var selectElement = document.getElementById("first"); var optionElements = selectElement.getElementsByTagName("option"); var len = optionElements.length; //alert(len); //將第一個selected中的數(shù)組翻轉(zhuǎn) var firstOption = new Array(); for(var k=len-1;k>=0;k--) { firstOption.push(optionElements[k]); } var lens = firstOption.length; //得到第二個select對象 var selectElement2 = document.getElementById("secend"); for(var j=lens-1;j>=0;j--) { selectElement2.appendChild(firstOption[j]); } } //移動選中的元素到左邊 function moveLeft() { //首先得到第二個select對象 var selectElement = document.getElementById("secend"); var optionElement = selectElement.getElementsByTagName("option"); var len = optionElement.length; //再次得到第一個元素 if(!(selectElement.selectedIndex==-1)) { var firstSelectElement = document.getElementById("first"); for(i=0;i<len;i++) { firstSelectElement.appendChild(optionElement[selectElement.selectedIndex]);//被選中的那個元素的索引 } }else { alert("您還沒有選中要移動的項(xiàng)目!"); } } //全部向左移 function moveAllLeft() { var selectElement = document.getElementById("secend"); var optionElements = document.getElementsByTagName("option"); var len = optionElements.length; var optionEls = new Array(); for(var i=len-1;i>=0;i--) { optionEls.push(optionElements[i]); } var lens = optionEls.length; var firstSelectElement = document.getElementById("first"); for(var j=lens-1;j>=0;j--) { firstSelectElement.appendChild(optionEls[j]); } } </script>
上面是javascript代碼,下面是html加css代碼。
Html代碼
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>無標(biāo)題文檔</title> <style type="text/css"> .select_move { margin:0px auto; width:206px; height:140px; margin-top:300px;} .select_move_1 { float:left;} .select_move_2 { float:left;} .select_move_3 { float:left;} </style> </head> <body> <div class="select_move"> <div class="select_move_1"> <select name="first" size="10" id="first" multiple="multiple"> <option value="寶馬">寶馬</option> <option value="豐田">豐田</option> <option value="奧迪">奧迪</option> <option value="凱迪拉克">凱迪拉克</option> <option value="現(xiàn)代">現(xiàn)代</option> <option value="奔馳">奔馳</option> <option value="法拉利">法拉利</option> </select> </div> <div class="select_move_2"> <input type="button" value="------>" onclick="moveRight()"/><br /> <input type="button" value="===>" onclick="moveAll()" /><br /> <input type="button" value="<------" onclick="moveLeft()"/><br /> <input type="button" value="<===" onclick="moveAllLeft()"/> </div> <div class="select_move_3"> <select size="10" id="secend" multiple="multiple"> </select> </div> </div> </body> </html>
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- js實(shí)現(xiàn)Select下拉框具有輸入功能的方法
- JS操作select下拉框動態(tài)變動(創(chuàng)建/刪除/獲取)
- JavaScript實(shí)現(xiàn)將數(shù)組數(shù)據(jù)添加到Select下拉框的方法
- Javascript select下拉框操作常用方法
- JS Select下拉框(支持輸入模糊查詢)
- javascript中select下拉框的用法總結(jié)
- JavaScript實(shí)現(xiàn)向select下拉框中添加和刪除元素的方法
- js實(shí)現(xiàn)可輸入可選擇的select下拉框
- jquery及原生js獲取select下拉框選中的值示例
- JavaScript實(shí)現(xiàn)獲取select下拉框中第一個值的方法
相關(guān)文章
JavaScript深入淺出__proto__和prototype
這篇文章主要介紹了JavaScript深入淺出__proto__和prototype,文章基于JavaScript的相關(guān)資料展開詳細(xì)的內(nèi)容介紹。具有一定的參考價值,需要的小伙伴可以參考一下2022-05-05jsTree樹控件(基于jQuery, 超強(qiáng)悍)[推薦]
jsTree是基于javascript的一個跨瀏覽器樹控件,功能強(qiáng)大,而且是免費(fèi)的。2009-09-09