基于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 相关文章推荐
纯JAVASCRIPT图表动画插件Highcharts Examples
Apr 16 Javascript
setTimeout的延时为0时多个浏览器的区别
May 23 Javascript
node.js中Socket.IO的进阶使用技巧
Nov 04 Javascript
jquery实现搜索框常见效果的方法
Jan 22 Javascript
JavaScript动态修改网页元素内容的方法
Mar 21 Javascript
AngularJS基础 ng-submit 指令简单示例
Aug 03 Javascript
JavaScript使用键盘输入控制实现数字验证功能
Aug 19 Javascript
Bootstrap Modal遮罩弹出层代码分享
Nov 21 Javascript
Vue入门之animate过渡动画效果
Apr 08 Javascript
Node.js之readline模块的使用详解
Mar 25 Javascript
JS字符串与二进制的相互转化实例代码详解
Jun 28 Javascript
Vue实现导航栏菜单
Aug 19 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 根据IP地址控制访问的代码
2010/04/22 PHP
免费的ip数据库淘宝IP地址库简介和PHP调用实例
2014/04/08 PHP
分享PHP守护进程类
2015/12/30 PHP
PHP的mysqli_select_db()函数讲解
2019/01/23 PHP
50个优秀经典PHP算法大集合 附源码
2020/08/26 PHP
当jQuery遭遇CoffeeScript的时候 使用分享
2011/09/17 Javascript
javaScript NameSpace 简单说明介绍
2013/07/18 Javascript
IE6/IE7中JavaScript json提示缺少标识符、字符串或数字问题处理
2014/12/16 Javascript
jQuery中unbind()方法用法实例
2015/01/19 Javascript
jQuery获取访问者IP地址的方法(基于新浪API与QQ查询接口)
2016/05/25 Javascript
全面解析JavaScript中apply和call以及bind(推荐)
2016/06/15 Javascript
JS文件上传神器bootstrap fileinput详解
2021/01/28 Javascript
微信小程序wx.request实现后台数据交互功能分析
2017/11/25 Javascript
vue兄弟组件传递数据的实例
2018/09/06 Javascript
史上最为详细的javascript继承(推荐)
2019/05/18 Javascript
整理 node-sass 安装失败的原因及解决办法(小结)
2020/02/19 Javascript
vue el-upload上传文件的示例代码
2020/12/21 Vue.js
Python类的基础入门知识
2008/11/24 Python
介绍Python中几个常用的类方法
2015/04/08 Python
基于Python中求和函数sum的用法详解
2018/06/28 Python
Selenium控制浏览器常见操作示例
2018/08/13 Python
Python GUI编程 文本弹窗的实例
2019/06/11 Python
Django使用模板后无法找到静态资源文件问题解决
2019/07/19 Python
pandas通过字典生成dataframe的方法步骤
2019/07/23 Python
解决django 新增加用户信息出现错误的问题
2019/07/28 Python
关于Python字符编码与二进制不得不说的一些事
2020/10/04 Python
利用Bootstrap实现漂亮简洁的CSS3价格表实例源码
2017/03/02 HTML / CSS
倩碧美国官网:Clinique美国
2016/07/20 全球购物
泰国汽车、火车和轮渡票预订网站:Bus Online Ticket
2017/09/09 全球购物
美国家居装饰和豪华家具购物网站:One Kings Lane
2018/12/24 全球购物
2014年党务公开方案
2014/05/08 职场文书
会计毕业生自荐书
2014/06/12 职场文书
党的群众路线教育实践活动个人批评与自我批评
2014/10/16 职场文书
民事撤诉申请书范本
2015/05/18 职场文书
利用Python读取微信朋友圈的多种方法总结
2021/08/23 Python
vue项目中的支付功能实现(微信支付和支付宝支付)
2022/02/18 Vue.js