`
iswift
  • 浏览: 190000 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Select左右选择、全选实现

    博客分类:
  • JS
阅读更多

效果图:



 html代码:

 

<html>
    <head>
    <title></title>
	<style type="text/css">		
		#m{list-style:none;font:12px}
		#m li{float:left}
		#m li div{width:55px;height:141px;padding-left:20px;padding-right:20px;padding-top:30px;}		
		select{width:100px;}
	</style>
	<script type="text/javascript">
		function copy(){
			var source = arguments[0] || "";
			var target = arguments[1] || "";
			var isAll = arguments[2] || false;
			if(source && target){
				if(isAll){//全选
					for(var i=0,len=source.options.length; i<len; i++){
						var v = source.options[i].value;
						var t = source.options[i].text;
						var opt = new Option(t, v);
						if(!isExists(target, opt)){
							target.options.add(opt);
							source.options.remove(i);
							i--;//移除一个,长度重新算
							len=source.options.length
						}
					}
				} else{
					for(var i=0,len=source.options.length; i<len; i++){
						if(source.options[i].selected){
							var v = source.options[i].value;
							var t = source.options[i].text;
							var opt = new Option(t, v);
							if(!isExists(target, opt)){
								target.options.add(opt);
								source.options.remove(i);
								i--;
								len=source.options.length
							}
						}
					}
				}
			}
		}
		
		//判断目标中是否存在该元素
		function isExists(target, opt){
			if(target && opt){
				for(var i=0,len=target.options.length; i < len; i++){
					if(target.options[i].value == opt.value){
						return true;
					}
				}
			}
			return false;
		}
		
		function toRight(isAll){
			var left = document.getElementsByName("left")[0];
			var right = document.getElementsByName("right")[0];
			copy(left, right, (isAll || false));
		}
		
		function toLeft(isAll){
			var left = document.getElementsByName("left")[0];
			var right = document.getElementsByName("right")[0];
			copy(right, left, (isAll || false));
		}
	</script>
    </head> 
    <body>
		<ul id="m">
			<li>
				<select name="left" size="10" multiple="multiple" ondblclick="toRight()">
					<option value="1">礼品1</option>
					<option value="2">礼品2</option>
					<option value="3">礼品3</option>
					<option value="4">礼品4</option>
					<option value="5">礼品5</option>
					<option value="6">礼品6</option>
					<option value="7">礼品7</option>
					<option value="8">礼品8</option>
				</select>
			</li>
			<li>
				<div>
					<input type="button" value="-->>" onclick="toRight()">
					<input type="button" value="==>>" onclick="toRight(true)">
					<input type="button" value="<<--" onclick="toLeft()">
					<input type="button" value="<<==" onclick="toLeft(true)">
				</div>
			</li>
			<li>
				<select name="right" size="10" multiple="multiple" ondblclick="toLeft()">
				</select>					
			</li>
		</ul>
    </body>
</html>
 
  • 大小: 4 KB
分享到:
评论

相关推荐

    jquery左右选择框

    根据提供的文件信息,本文将详细解析“jquery左右选择框”的实现原理、代码结构及功能特点。此案例展示了如何使用jQuery库来实现一个简单的左右选择框交互功能,这在实际项目中非常常见,例如用户权限分配、多选项...

    一天搞定jQuery(五)——使用jQuery完成下拉列表左右选择

    在本篇教程中,我们将深入探讨如何利用jQuery库来实现一个功能丰富的下拉列表左右选择交互。jQuery是一款广泛使用的JavaScript库,它简化了DOM操作、事件处理和动画效果,使得前端开发变得更加高效和便捷。本章节...

    使用javascript实现ListBox左右全选,单选,多选,全请

    此外,题目还提到了ListBox的左右移动功能,这是在一个ListBox中将已选择的选项移动到另一个ListBox中,通常用于实现数据的过滤或分类。移动功能通过两个ListBox以及两个按钮实现,按钮的点击事件分别调用`...

    bootstrap multiselect-maste 左右选择、多选 样例包

    Bootstrap Multiselect是一款基于jQuery的插件,用于在Bootstrap框架中实现多选下拉菜单功能,提供了丰富的交互式选择器,包括左右选择等特性。这款插件极大地提升了用户在网页上进行选择操作的体验,尤其适合那些...

    jquery实现select选择框内容左右移动代码分享

    在本文中,我们将深入探讨如何使用jQuery来实现一个功能,即在两个`&lt;select&gt;`选择框之间移动选项内容。这个功能对于需要用户在多个选项中进行选择并分配到不同组的场景非常有用,例如在设置权限、筛选列表或管理项目...

    一个基于纯js实现的左右(或上下)DubalListBox控件操作程序例子代码

    这个控件通常由两个列表框组成,允许用户在左右(或上下)两个列表之间移动项目,实现数据的筛选和选择。本示例是一个基于纯JavaScript实现的Dubal ListBox操作程序,它不依赖任何外部库,如jQuery或其他框架,这...

    javascript实现的左右选择框效果代码

    标题中的“javascript实现的左右选择框效果代码”指的是在网页设计中使用JavaScript语言来创建一种交互式的用户界面,其中包含两个选择框(通常称为选择列表或下拉菜单),一个位于左边,另一个位于右边。...

    multiselect 左右多选精简例子

    这个例子可能是为了帮助开发者快速掌握如何实现左右两部分多选框之间的数据交换或同步功能。 首先,我们来看`index.html`文件,这是整个示例的核心。它包含了HTML结构,用于展示左右两个多选框以及可能的按钮或其他...

    jQuery穿梭框左右列表添加删除代码

    本示例着重讲解如何利用jQuery实现这样的功能,同时支持多选和全选。 **一、HTML结构** `index.html` 文件中,你需要创建两个`&lt;ul&gt;`元素,分别代表左右两个列表,每个`&lt;li&gt;`元素代表一个可选项。此外,还需要两个...

    JavaScript Select和Option列表元素上下左右移动

    在本文中,我们将探讨如何使用JavaScript实现一个下拉列表中Select和Option元素的上下左右移动功能。 下拉列表是网页表单中常见的一种元素,通常用来提供用户一系列可选择的选项。Select和Option是HTML中用于创建...

    两个select多选模式的选项相互移动(示例代码)

    `allSelect`函数用于全选或全不选`chosen`列表中的所有选项,这在提交表单时可能有用,确保用户至少选择了某个选项。 `getdata`函数用于获取选定的选项值并存储在一个隐藏的`&lt;input&gt;`元素(`RoleList`)中,以便在...

    Multiselect源码

    "Multiselect"是一种基于jQuery实现的双列多选列表框控件,它提供了方便的左右移动功能,使得用户能够轻松地在两个列表之间选择和移除选项。本文将深入探讨Multiselect的实现原理和核心知识点,帮助开发者理解和应用...

    第四章 WEB004-jQuery篇1

    【DOM转换和选择器】在jQuery中,`$(“#id”)` 用于选取具有特定ID的元素,而 `$("#id").show()` 或 `.hide()` 可以实现元素的显示和隐藏。在广告弹出的例子中,使用这些方法可以实现广告图片的定时显示和隐藏。同时...

    treeView树形控件

    在本场景中,我们讨论的是一个具有特定特性的树形控件,它支持层数过多时的左右滑动查看,以及选中、全选和取消全选的功能。以下是对这些特性的详细说明: 1. **树形结构数据展示**:TreeView控件是基于树状结构来...

    jquery技术

    这里,`#selectAll`和`#deselectAll`是全选和反选按钮的ID,`$("input[type='checkbox']")`则选择了所有复选框元素,`prop("checked", true/false)`用来设置它们的选中状态。 ### 4. 提交表单 jQuery提供`submit()...

    UDK基本掌握与界面介绍

    如果希望将同一纹理应用于多个表面,可以先选定一个表面,然后选择SELECT SURFACE和SELECT ALL SURFACE,最后应用材质。 至于光源设置,UDK提供了多种类型的光源,如点光源、聚光灯和方向光,它们对于场景的视觉...

    基于QT的电子相册+时间显示

    下载到虚拟机里可以直接运行,然后选择打开你所需要的图片,记得要全选ctrl+鼠标左键选择要显示的照片,打开完成后按下播放即可,本电子相册实现以下功能:放大、缩小,左右旋转、后退、暂停、播放、打开的功能。

    JQuery案例用到的素材

    4. **下拉框左右移动**:实现下拉框的左右移动效果,可以利用jQuery的动画功能。通过改变下拉框的CSS位置属性(如`left`或`right`),配合`animate`方法,可以实现平滑的移动效果。以下是一个基本的实现: ```...

    day04-jq.zip

    最后,"05-下拉列表左右选择"是一种常见的选项交换功能,用户可以在两个下拉列表之间移动选项。这需要监听下拉列表的`change`事件,然后使用`.append()`和`.remove()`方法将选项在两个列表之间转移。同时,确保正确...

    logic快捷键.pdf

    - Select All: 全选 快捷键文档可能由于OCR技术的原因出现一些错误或缺失,需要用户根据实际软件进行对照和理解。例如,快捷键“R”可能表示记录(Record),但由于OCR识别的问题,它可能被误读为其他字符。用户在...

Global site tag (gtag.js) - Google Analytics