JavaScript如何实现组合列表框中元素移动效果

在页面中有两个列表框,需要把其中一个列表框的元素移动到另一个列表框,怎么实现此功能呢,下面通过本文给大家介绍JavaScript如何实现组合列表框中元素移动效果,感兴趣的朋友一起学习吧

首先给大家说下组合框和列表框的区别:

组合框包括列表框和文本框的功能

文本框:只能输入数据

列表框:只能选择数据

组合框:既能输入数据,又能选择``

应用背景:在页面中有两个列表框,需要把其中一个列表框的元素移动到另一个列表框 。

   实现的基本思想:

  (1)编写init方法对两个列表框进行初始化;

  (2)为body添加onload事件调用init方法;

  (3)编写move(s1,s2)把s1中选中的选项移到s2;

  (4)编写moveAll(s1,s2)把s1中所有的选项都移到s2.

  (5)为按钮添加onclick事件。

javascript代码如下:

<script type="text/javascript" language="javascript"> //对下拉框信息进行初始化 function init() { for (i = ; i < ; i++) { var y = document.createElement("option");//增加一个元素option y.text = '选项' + i; var x=document.getElementById("s");//根据ID找到列表框 x.add(y, null); // } } //把选中的选项移到另一边 function move(s, s) { var index = s.selectedIndex; if (index == -) { alert("没有选中值"); return; } s.length++; s.options[s.length - ].value = s.options[index].value; s.options[s.length - ].text = s.options[index].text;//s中当前选中的值赋给s的最后一个元素 s.remove(index);//从s中移除当前元素 } //把一边的完全移到另一边 function moveAll(s, s) { if (s.length == ) { alert("没有可用选择"); 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> <table> <tr> <td><select size=></select></td> <td><input type="button" value=">"> <br> <br> <input type="button" value=">>"> <br> <input type="button" value="<"> <br> <br> <input type="button" value="<<"></td> <td><select size=></select></td> </tr> </table> </body>

以上内容给大家介绍了JavaScript如何实现组合列表框中元素移动效果的相关知识,希望对大家有所帮助!

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wjxwwj.html