JavaScript控制两个列表框listbox左右交换数据的方法


Posted in Javascript onMarch 18, 2015

本文实例讲述了JavaScript控制两个列表框listbox左右交换数据的方法。分享给大家供大家参考。具体分析如下:

这个功能我们经常用到,将左边列表框的元素移动到右边,或者将右边列表框的元素移动到左边,可以一次性全部移动

function listbox_moveacross(sourceID, destID) {

    var src = document.getElementById(sourceID);

    var dest = document.getElementById(destID);

    for(var count=0; count < src.options.length; count++) {

        if(src.options[count].selected == true) {

                var option = src.options[count];

                var newOption = document.createElement("option");

                newOption.value = option.value;

                newOption.text = option.text;

                newOption.selected = true;

                try {

                         dest.add(newOption, null); //Standard

                         src.remove(count, null);

                 }catch(error) {

                         dest.add(newOption); // IE only

                         src.remove(count);

                 }

                count--;

        }

    }

}

//..

listbox_moveacross('countryList', 'selectedCountryList');

下面是像是的演示效果代码,可以直接在浏览器内执行
Click below buttons to move selected options right or left.<br>

<table>

<tbody><tr>

    <td>

<select id="sourceSelect" size="10" multiple="">

 <option value="a">Afghanistan</option>

 <option value="b">Bahamas</option>

 <option value="c">Barbados</option>

 <option value="d">Belgium</option>

 <option value="e">Bhutan</option>

 <option value="f">China</option>

 <option value="g">Croatia</option>

 <option value="h">Denmark</option>

 <option value="i">France</option>

</select>

    </td>

    <td>

        <button onclick="listboxMoveacross('sourceSelect', 'destSelect');">>></button>  <br>

        <button onclick="listboxMoveacross('destSelect', 'sourceSelect');"><<</button>

    </td>

    <td>

<select id="destSelect" size="10" multiple="">

 <option value="a">Afghanistan</option>

 <option value="b">Bahamas</option>

 <option value="c">Barbados</option>

 <option value="d">Belgium</option>

 <option value="e">Bhutan</option>

 <option value="f">China</option>

 <option value="g">Croatia</option>

 <option value="h">Denmark</option>

 <option value="i">France</option>

</select>

    </td>

</tr>

</tbody></table>

    <script>

function listboxMoveacross(sourceID, destID) {

    var src = document.getElementById(sourceID);

    var dest = document.getElementById(destID);

    for(var count=0; count < src.options.length; count++) {

        if(src.options[count].selected == true) {

                var option = src.options[count];

                var newOption = document.createElement("option");

                newOption.value = option.value;

                newOption.text = option.text;

                newOption.selected = true;

                try {

                         dest.add(newOption, null); //Standard

                         src.remove(count, null);

                 }catch(error) {

                         dest.add(newOption); // IE only

                         src.remove(count);

                 }

                count--;

        }

    }

}

</script>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
js中将多个语句写成一个语句的两种方法小结
Dec 08 Javascript
写给想学习Javascript的朋友一点学习经验小结
Nov 23 Javascript
javascript简单实现表格行间隔显示颜色并高亮显示
Nov 29 Javascript
Javascript原型链和原型的一个误区
Oct 22 Javascript
Javascript中String的常用方法实例分析
Jun 13 Javascript
jquery原理以及学习技巧介绍
Nov 11 Javascript
学习JavaScript设计模式(策略模式)
Nov 26 Javascript
深入JavaScript高级程序设计之对象、数组(栈方法,队列方法,重排序方法,迭代方法)
Dec 01 Javascript
JavaScript构建自己的对象示例
Nov 29 Javascript
JavaScript用构造函数如何获取变量的类型名
Dec 23 Javascript
解决bootstrap中使用modal加载kindeditor时弹出层文本框不能输入的问题
Jun 05 Javascript
VUE异步更新DOM - 用$nextTick解决DOM视图的问题
Nov 06 Javascript
jQuery实现根据类型自动显示和隐藏表单
Mar 18 #Javascript
jQuery实现列表的全选功能
Mar 18 #Javascript
JavaScript判断一个字符串是否包含指定子字符串的方法
Mar 18 #Javascript
JavaScript移除数组内重复元素的方法
Mar 18 #Javascript
JavaScript给url网址进行encode编码的方法
Mar 18 #Javascript
jQuery删除一个元素后淡出效果展示删除过程的方法
Mar 18 #Javascript
Java File类的常用方法总结
Mar 18 #Javascript
You might like
PHP操作MySQL中BLOB字段的方法示例【存储文本与图片】
2017/09/15 PHP
dojo 之基础篇(二)之从服务器读取数据
2007/03/24 Javascript
use jscript List Installed Software
2007/06/11 Javascript
JS window.opener返回父页面的应用
2009/10/24 Javascript
JavaScript中用于四舍五入的Math.round()方法讲解
2015/06/15 Javascript
详解JavaScript的另类写法
2016/04/11 Javascript
Bootstrap打造一个左侧折叠菜单的系统模板(二)
2016/05/17 Javascript
JS事件添加和移出的兼容写法示例
2016/06/20 Javascript
谈谈对JavaScript原生拖放的深入理解
2016/09/20 Javascript
微信小程序 选择器(时间,日期,地区)实例详解
2016/11/16 Javascript
jQuery实现的简单前端搜索功能示例
2017/10/28 jQuery
Angular使用动态加载组件方法实现Dialog的示例
2018/05/11 Javascript
Vue 实现拖动滑块验证功能(只有css+js没有后台验证步骤)
2018/08/24 Javascript
Node.js从字符串生成文件流的实现方法
2019/08/18 Javascript
JS设置自定义快捷键并实现图片上下左右移动
2019/10/17 Javascript
js实现时间日期校验
2020/05/26 Javascript
js实现详情页放大镜效果
2020/10/28 Javascript
python实现中文转换url编码的方法
2016/06/14 Python
python 找出list中最大或者最小几个数的索引方法
2018/10/30 Python
详解Python with/as使用说明
2018/12/13 Python
Python 实现文件打包、上传与校验的方法
2019/02/13 Python
使用Python和Prometheus跟踪天气的使用方法
2019/05/06 Python
python面向对象 反射原理解析
2019/08/12 Python
浅谈Pytorch torch.optim优化器个性化的使用
2020/02/20 Python
python如何求圆的面积
2020/07/01 Python
Python绘图之二维图与三维图详解
2020/08/04 Python
Django 实现图片上传和下载功能
2020/12/31 Python
CSS3实现的渐变幻灯片效果
2020/12/07 HTML / CSS
光声世纪笔试题目
2012/08/25 面试题
经管应届生求职信
2013/11/17 职场文书
手工社团活动方案
2014/02/17 职场文书
镇创先争优活动总结
2014/08/28 职场文书
MYSQL(电话号码,身份证)数据脱敏的实现
2021/05/28 MySQL
分享几种python 变量合并方法
2022/03/20 Python
联想win10摄像头打不开怎么办?win10笔记本摄像头打不开解决办法
2022/04/08 数码科技
css3手动实现pc端横向滚动
2022/06/21 HTML / CSS