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

  (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 = 0; i < 10; i++) {
var y = document.createElement("option");//增加一个元素option
y.text = '选项' + i;
var x=document.getElementById("s1");//根据ID找到列表框 x.add(y, null); // } } //把选中的选项移到另一边
function move(s1, s2) {
var index = s1.selectedIndex;
if (index == -1) {
alert("没有选中值");
return;
} s2.length++;
s2.options[s2.length - 1].value = s1.options[index].value;
s2.options[s2.length - 1].text = s1.options[index].text;//s1中当前选中的值赋给s2的最后一个元素
s1.remove(index);//从s1中移除当前元素
} //把一边的完全移到另一边
function moveAll(s1, s2) {
if (s1.length == 0) {
alert("没有可用选择");
return;
}
s2.length = s2.length + s1.length;
for (var i = 0; i < s1.length; i++) {
s2.options[s2.length - s1.length + i].value = s1.options[i].value;
s2.options[s2.length - s1.length + i].text = s1.options[i].text;
} s1.length = 0;
}
</script>

<body>代码:

 <body onload="init()">
<table>
<tr>
<td><select id="s1" size=10 style="width:100"></select></td> <td><input type="button" name="moveToRight" value=">"
onClick="move(s1,s2)"> <br>
<br> <input type="button" name="moveAllToRight" value=">>"
onClick="moveAll(s1,s2)"> <br> <input type="button"
name="moveToLeft" value="<" onClick="move(s2,s1)"> <br>
<br> <input type="button" name="moveAllToLeft" value="<<"
onClick="moveAll(s2,s1)"></td>
<td><select id="s2" name="s2" size=10 style="width:100"></select></td> </tr>
</table> </body>

javascript实现组合列表框中元素移动效果的更多相关文章

  1. javascript 获取iframe里页面中元素值的方法 关于contentWindow和contentDocumen

    javascript 获取iframe里页面中元素值的方法 IE方法:document.frames['myFrame'].document.getElementById('test').value; ...

  2. ie中弹出框中元素的定位

    用selenium在ie8浏览器中定位一个弹出框时,直接用ie developer tools可能不一定能定位到,有一个解决的办法是直接在url后面加上#noHide,刷新后,然后再用ie devel ...

  3. JavaScript实现在文本框中输入空格时自动填写某个值

    <script language="javascript" type="text/javascript"> var txtText4 = " ...

  4. javascript动态改变当前页面中元素的状态行为

    function Datea() { var timed = document.getElementById('timed'); var t = setInterval(function TDate( ...

  5. weui 弹框中的单选效果

    <!--性别修改弹框--> <div class="weui_dialog_alert" id="doctorSexDialog" style ...

  6. (七)对话框,单选框(radiobox),复选框(checkbox),列表框(ListBox),组合框(CComboBox),水平滚动条(Horizontal scroll bar),微调(旋转)spincontrol,列表视图控件CListCtrl,静态控件static

    1,模态对话框和非模态对话框 // 模态对话框 void CMainFrame::OnDialogExec() { // TODO: 在此添加命令处理程序代码 // 创建对话框对象 CDialog d ...

  7. MFC入门示例之组合框(CComboBox)、列表框(CListBox)

    1 //添加按钮点击事件 2 void CMFCApplication4Dlg::OnBnClickedButton1() 3 { 4 CString strText; 5 //获取文本框的值 6 G ...

  8. MFC编程入门之二十四(常用控件:列表框控件ListBox)

    前面两节讲了比较常用的按钮控件,并通过按钮控件实例说明了具体用法.本文要讲的是列表框控件(ListBox)及其使用实例. 列表框控件简介 列表框给出了一个选项清单,允许用户从中进行单项或多项选择,被选 ...

  9. javascript文件夹选择框的两种解决方案

    javascript文件夹选择框的两种解决方案 解决方案1:调用windows 的shell,但会有安全问题. * browseFolder.js * 该文件定义了BrowseFolder()函数,它 ...

随机推荐

  1. JZOJ 3928. 【NOIP2014模拟11.6】射击

    3928. [NOIP2014模拟11.6]射击 (Standard IO) Time Limits: 1000 ms Memory Limits: 65536 KB Description 有问题, ...

  2. Centos 安装rabbitmq

    此处是通过源码进行安装的rabbitmq,参考:http://www.cnblogs.com/huangxincheng/p/6006569.html 1.源码包下载 ① erlang : http: ...

  3. AppBoxFuture实战: 如何同步开发与生产环境的模型

      框架是用抽象模型驱动的方式来生成应用系统的,这样可以将这些模型序列化为相应的模型包文件,通过反序列化导入至其他部署环境内,从而实现开发环境与生产环境的同步,包括对应的数据库结构的同步.下面通过示例 ...

  4. Block as a Value for SQL over NoSQL

    作者 Yang Cao,Wenfei Fan,Tengfei Yuan University of Edinburgh,Beihang University SICS, Shenzhen Univer ...

  5. docker 编译开发代码做镜像

    文件目录 Dockerfile 是docker制作镜像的文件,docker_run.sh是sh文件,gin_test是go编译之后的linux可执行程序,gintest.env是配置文件夹 首先写一个 ...

  6. BeetleX.FastHttpApi之测试插件集成

    说到Webapi测试工具相信很多人想起Swagger,它可以非常方便地集成到项目中并进行项目Webapi接口测试.而BeetleX.FastHttpApi在新版本中也提供类似的插件,只需要引用这个插件 ...

  7. 数据结构 - List 接口

    简介 List接口继承自Collection接口,是Collection三大延伸接口之一.List中的元素都是有序的,并且都支持用索引访问.同时List中的元素允许重复. public interfa ...

  8. Billboard HDU - 2795(树状数组,单点修改,区间查询)

    题目链接:https://vjudge.net/problem/HDU-2795 思路:h = 1e9行不通,因为广告是1*w的,所以n个广告最多只需要 h = n的高度,那么h=2e5就可以接受了. ...

  9. java实现简单的星座查询

    在校小白,大神勿喷. 版本已简化 连接mysql数据库验证用户名及密码进行登陆 public class mysql {Connection con;public mysql(){    try{   ...

  10. 可运行jar包的几种打包/部署方式(转)

    转自:https://www.cnblogs.com/yjmyzz/p/executable-jar.html java项目开发中,最终生成的jar,大概可分为二类,一类是一些通用的工具类(不包含ma ...