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 相关文章推荐
JavaScript中的View-Model使用介绍
Aug 11 Javascript
jQuery中extend函数的实现原理详解
Feb 03 Javascript
使用Javascript写的2048小游戏
Nov 25 Javascript
js弹出框、对话框、提示框、弹窗实现方法总结(推荐)
May 31 Javascript
JS实现的图片预览插件与用法示例【不上传图片】
Nov 25 Javascript
详解Javascript数据类型的转换规则
Dec 12 Javascript
在iframe中使bootstrap的模态框在父页面弹出问题
Aug 07 Javascript
在 Vue-CLI 中引入 simple-mock实现简易的 API Mock 接口数据模拟
Nov 28 Javascript
解决vue-cli 打包后自定义动画未执行的问题
Nov 12 Javascript
JS实现滑动插件
Jan 15 Javascript
JavaScript实现雪花飘落效果
Dec 27 Javascript
vue3引入highlight.js进行代码高亮的方法实例
Apr 08 Vue.js
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
用JS操作FRAME中的IFRAME及其内容的实现代码
2008/07/26 Javascript
汉化英文版的Dreamweaver CS5并自动提示jquery
2010/11/25 Javascript
JS/FLASH实现复制代码到剪贴板(兼容所有浏览器)
2013/05/27 Javascript
jquery实现点击文字可编辑并修改保存至数据库
2014/04/15 Javascript
js和jquery如何获取图片真实的宽度和高度
2014/09/28 Javascript
JavaScript动态创建link标签到head里的方法
2014/12/22 Javascript
纯js实现无限空间大小的本地存储
2015/06/18 Javascript
jQuery 移动端artEditor富文本编辑器
2016/01/11 Javascript
VUEJS实战之修复错误并且美化时间(2)
2016/06/13 Javascript
JS敏感词过滤代码
2016/12/23 Javascript
详解vue-router 2.0 常用基础知识点之导航钩子
2017/05/10 Javascript
node.js学习之断言assert的使用示例
2017/09/28 Javascript
jQuery实现表格隔行换色
2018/09/01 jQuery
详解React中传入组件的props改变时更新组件的几种实现方法
2018/09/13 Javascript
解决vue组件销毁之后计时器继续执行的问题
2020/07/21 Javascript
[01:39:42]Fnatic vs Mineski 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
python的绘图工具matplotlib使用实例
2014/07/03 Python
Python中格式化format()方法详解
2017/04/01 Python
django2 快速安装指南分享
2018/01/05 Python
python 实现对文件夹内的文件排序编号
2018/04/12 Python
python 运用Django 开发后台接口的实例
2018/12/11 Python
使用python的pandas为你的股票绘制趋势图
2019/06/26 Python
详解Python多线程下的list
2020/07/03 Python
CSS3 input框的实现代码类似Google登录的动画效果
2020/08/04 HTML / CSS
马来西亚航空官方网站:Malaysia Airlines
2017/07/28 全球购物
德国BA保镖药房韩文网:kr.ba.de
2017/09/04 全球购物
泰国王权免税店官方网站:KingPower
2019/03/11 全球购物
会计专业毕业生自荐信范文
2013/12/20 职场文书
公司年会晚宴演讲稿
2014/01/06 职场文书
八一演出活动方案
2014/02/03 职场文书
多媒体教室标语
2014/06/26 职场文书
公证委托书
2014/08/01 职场文书
小学生一分钟演讲稿
2014/08/26 职场文书
2015年七一建党节活动方案
2015/05/05 职场文书
求职意向书范本
2015/05/11 职场文书
离婚起诉书怎么写
2015/05/19 职场文书