基于JQUERY的两个ListBox子项互相调整的实现代码


Posted in Javascript onMay 07, 2011

HTML:

<div id="divObj3" class="divContent"> 
<input id="hidColorSelect" name="ColorSelect" type="hidden" value="3,5,6,11,12,13,14" /> 
<table style="width: 100%; text-align: center;"> 
<tr class="tr"> 
<td class="tdr" align="center" width="50%"> 
<span id="ctl00_ContentPlaceHolder1_WebPanel4_Label7">未选择颜色</span> : 
</td> 
<td class="tdl" width="1%"> 
</td> 
<td class="tdr" align="center" width="50%"> 
<span id="ctl00_ContentPlaceHolder1_WebPanel4_Label8">已选择颜色</span> : 
</td> 
</tr> 
<tr class="tr"> 
<td align="right"> 
<select id="colorUnSelect" multiple="multiple" name="unSelectColors" ondblclick="listMove('colorSelect','colorUnSelect','hidColorSelect',true,this.selectedIndex)" size="8" style="height: 200px; width: 90%;"><option value="4">蓝色</option> 
<option value="21">红色132</option> 
</select> 
</td> 
<td> 
<img alt="" name="btnRAdd" id="btnRAdd1" src="/Content/images/%E4%B8%8B%E4%B8%80%E9%A1%B5.jpg" style="border-width: 0px;cursor:hand;" onclick="listMove('colorSelect','colorUnSelect','hidColorSelect',true)" /> 
<img alt="" name="btnRDrop" id="btnRDrop1" src="/Content/images/%E5%89%8D%E4%B8%80%E9%A1%B5.jpg" style="border-width: 0px;cursor:hand;" onclick="listMove('colorSelect','colorUnSelect','hidColorSelect',false)" /> 
</td> 
<td align="left"> 
<select id="colorSelect" multiple="multiple" name="selectColors" 
ondblclick="listMove('colorSelect','colorUnSelect','hidColorSelect',false,this.selectedIndex)" 
size="8" style="height: 200px; width: 90%;"> 
<option value="3">红色</option> 
<option value="5">紫色</option> 
<option value="6">黄色</option> 
<option value="11">黑色</option> 
<option value="12">白色</option> 
<option value="13">绿色</option> 
<option value="14">粉红色</option> 
</select> 
</td> 
</tr> 
</table> 
</div>

对应JS方法:
function listMove(main, follow, hidetextbox, isBack, index) { 
if (index < 0) 
return; 
var o = undefined; 
var source; 
var distinct; 
var dddd; 
if (!isBack) { 
//使用getElementById在IE6中存在BUG 
source = $('#' + main);// window.document.getElementById(main); 
distinct = $('#' + follow); //window.document.getElementById(follow); 
} 
else { 
source = $('#' + follow); // window.document.getElementById(follow); 
distinct = $('#' + main); // window.document.getElementById(main); 
} 
var hid = $('#' + hidetextbox)[0]; // document.getElementById(hidetextbox); 
if (index != undefined) { 
var op = "option:eq(" + index + ")"; 
source.find(op).each(function () { 
distinct.append("<option value='" + $(this).val() + "'>" + $(this).text() + "</option>"); 
$(this).remove(); 
}); 
} 
else { 
source.find("option:selected").each(function () { 
$(this).remove(); 
distinct.append("<option value='" + $(this).val() + "'>" + $(this).text() + "</option>"); 
}); 
} 
var str = ""; 
//遍历Listbox,取得选中项的值 
$('#' + main + ' option').each(function () { 
str += $(this).val() + ','; 
}); 
hid.value = str; 
}
Javascript 相关文章推荐
jQuery库与其他JS库冲突的解决办法
Feb 07 Javascript
jQuery UI Dialog控件中的表单无法正常提交的解决方法
Dec 19 Javascript
滚动条响应鼠标滑轮事件实现上下滚动的js代码
Jun 30 Javascript
JavaScript中定义函数的三种方法
Mar 12 Javascript
基于jQuery和CSS3制作响应式水平时间轴附源码下载
Dec 20 Javascript
js创建对象的方法汇总
Jan 07 Javascript
Map.vue基于百度地图组件重构笔记分享
Apr 17 Javascript
微信小程序图片自适应支持多图实例详解
Jun 21 Javascript
解决在vue项目中,发版之后,背景图片报错,路径不对的问题
Mar 06 Javascript
node.js微信小程序配置消息推送的实现
Feb 13 Javascript
Vue组件间通信方法总结(父子组件、兄弟组件及祖先后代组件间)
Apr 17 Javascript
layui实现把数据表格时间戳转换为时间格式的例子
Sep 12 Javascript
基于jquery的lazy loader插件实现图片的延迟加载[简单使用]
May 07 #Javascript
基于jQuery的倒计时插件代码
May 07 #Javascript
基于Jquery的将DropDownlist的选中值赋给label的实现代码
May 06 #Javascript
jQuery 常见操作实现方式和常用函数方法总结
May 06 #Javascript
jQuery1.6 正式版发布并提供下载
May 05 #Javascript
High Performance JavaScript(高性能JavaScript)读书笔记分析
May 05 #Javascript
jQuery bind事件使用详解
May 05 #Javascript
You might like
PHP中Date获取时间不正确怎么办
2008/06/05 PHP
php遍历目录viewDir函数
2009/12/15 PHP
PHP安全技术之 实现php基本安全
2010/09/04 PHP
php防止SQL注入详解及防范
2013/11/12 PHP
利用jQuery的$.event.fix函数统一浏览器event事件处理
2009/12/21 Javascript
JS俄罗斯方块,包含完整的设计理念
2010/12/11 Javascript
js中如何把字符串转化为对象、数组示例代码
2013/07/17 Javascript
javascript创建createXmlHttpRequest对象示例代码
2014/02/10 Javascript
微信小程序日历组件calendar详解及实例
2017/06/08 Javascript
AngularJS表单验证功能
2017/10/19 Javascript
Vue 使用 Mint UI 实现左滑删除效果CellSwipe
2018/04/27 Javascript
[00:37]2016完美“圣”典风云人物:AMS宣传片
2016/12/06 DOTA
python使用socket连接远程服务器的方法
2015/04/29 Python
Python的Twisted框架上手前所必须了解的异步编程思想
2016/05/25 Python
Python实现的基数排序算法原理与用法实例分析
2017/11/23 Python
python数字图像处理之高级形态学处理
2018/04/27 Python
python smtplib模块实现发送邮件带附件sendmail
2018/05/22 Python
python 脚本生成随机 字母 + 数字密码功能
2018/05/26 Python
解决nohup执行python程序log文件写入不及时的问题
2019/01/14 Python
对python:循环定义多个变量的实例详解
2019/01/20 Python
python学生管理系统开发
2019/01/30 Python
对numpy下的轴交换transpose和swapaxes的示例解读
2019/06/26 Python
Pycharm pyuic5实现将ui文件转为py文件,让UI界面成功显示
2020/04/08 Python
深入了解Python 方法之类方法 &amp; 静态方法
2020/08/17 Python
pycharm永久激活超详细教程
2020/10/29 Python
python对输出的奇数偶数排序实例代码
2020/12/04 Python
pytorch 计算Parameter和FLOP的操作
2021/03/04 Python
使用canvas压缩图片上传的方法示例
2020/02/07 HTML / CSS
斯巴达比赛商店:Spartan Race
2019/01/08 全球购物
限量版运动鞋和街头服饰:TheDrop
2020/09/06 全球购物
计算机应用专业应届毕业生中文求职信范文
2013/11/29 职场文书
小学生我的梦想演讲稿
2014/08/21 职场文书
正风肃纪查摆剖析材料
2014/10/10 职场文书
幼儿园教师个人总结
2015/02/05 职场文书
幼儿园班级工作总结2015
2015/05/25 职场文书
电影开国大典观后感
2015/06/04 职场文书