1. 程式人生 > >用js實現兩個select下拉框之間的元素互相移動

用js實現兩個select下拉框之間的元素互相移動

/**選中的元素向右移動**/ 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中的陣列翻轉 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("您還沒有選中要移動的專案!"); } } //全部向左移 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]); } }