基于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基础教程之数组使用详解
Mar 10 Javascript
js实现ifram取父窗口URL地址的方法
Feb 09 Javascript
JavaScript实现文字跟随鼠标特效
Aug 06 Javascript
学习javascript面向对象 javascript实现继承的方式
Jan 04 Javascript
微信小程序 开发工具快捷键整理
Oct 31 Javascript
AngularJS表单和输入验证实例
Nov 02 Javascript
JavaScript中使用Async实现异步控制
Aug 15 Javascript
element-ui 的el-button组件中添加自定义颜色和图标的实现方法
Oct 26 Javascript
ES6 Iterator接口和for...of循环用法分析
Jul 31 Javascript
ElementUI多个子组件表单的校验管理实现
Nov 07 Javascript
Vue 401配合Vuex防止多次弹框的案例
Nov 11 Javascript
react-native 实现购物车滑动删除效果的示例代码
Jan 15 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解决抢购秒杀抽奖等大流量并发入库导致的库存负数的问题
2014/06/19 PHP
Yii2主题(Theme)用法详解
2016/07/23 PHP
PHP常用的类封装小结【4个工具类】
2019/06/28 PHP
laravel中数据显示方法(默认值和下拉option默认选中)
2019/10/11 PHP
网页自动跳转代码收集
2009/09/27 Javascript
关于JS判断图片是否加载完成且获取图片宽度的方法
2013/04/09 Javascript
动态创建script在IE中缓存js文件时导致编码的解决方法
2014/05/04 Javascript
Node.js和MongoDB实现简单日志分析系统
2015/04/25 Javascript
jQuery插件Timelinr 实现时间轴特效
2015/10/04 Javascript
js实现增加数字显示的环形进度条效果
2017/02/05 Javascript
Vue实现购物车场景下的应用
2017/11/27 Javascript
Vue中Quill富文本编辑器的使用教程
2018/09/21 Javascript
如何使用CSS3和JQuery easing 插件制作绚丽菜单
2019/06/18 jQuery
Layui数据表格跳转到指定页的实现方法
2019/09/05 Javascript
jQuery 动画与停止动画效果实例详解
2020/05/19 jQuery
vue实现移动端H5数字键盘组件使用详解
2020/08/25 Javascript
vue实现一个矩形标记区域(rectangle marker)的方法
2020/10/28 Javascript
[01:33]完美世界DOTA2联赛PWL S3 集锦第二期
2020/12/21 DOTA
收藏整理的一些Python常用方法和技巧
2015/05/18 Python
python使用fcntl模块实现程序加锁功能示例
2017/06/23 Python
Python 3.x读写csv文件中数字的方法示例
2017/08/29 Python
python实现BackPropagation算法
2017/12/14 Python
python替换字符串中的子串图文步骤
2019/06/19 Python
python爬虫解决验证码的思路及示例
2019/08/01 Python
复化梯形求积分实例——用Python进行数值计算
2019/11/20 Python
Python读取VOC中的xml目标框实例
2020/03/10 Python
详解基于Jupyter notebooks采用sklearn库实现多元回归方程编程
2020/03/25 Python
国际经济贸易专业推荐信
2013/11/06 职场文书
毕业生的求职信范文分享
2013/12/04 职场文书
销售人员获奖感言
2014/02/05 职场文书
留学推荐信范文
2014/05/10 职场文书
民主评议党员自我评价材料
2014/09/18 职场文书
六查六看剖析材料
2014/10/06 职场文书
公司捐书倡议书
2015/04/27 职场文书
2019个人年度目标制定攻略!
2019/07/12 职场文书
JavaScript前端面试组合函数
2022/06/21 Javascript