25.用js和jquery实现下拉列表的左右选择

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script type="text/javascript" src="../js/jquery-1.8.3.js"></script>
<style type="text/css">
* { margin:0; padding:0; }
div.centent {
   float:left;
   text-align: center;
   margin: 10px;
}
span { 
	display:block; 
	margin:2px 2px;
	padding:4px 10px; 
	background:#898989;
	cursor:pointer;
	font-size:12px;
	color:white;
}
</style>


</head>
<body>
	<div class="centent">
		<select multiple="multiple" id="select1" style="width:100px;height:160px;">
			<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>
		</select>
		<div>
			<span id="add" >选中添加到右边>></span>
			<span id="add_all" >全部添加到右边>></span>
		</div>
	</div>

	<div class="centent">
		<select multiple="multiple" id="select2" style="width: 100px;height:160px;">
			<option value="8">选项8</option>
		</select>
		<div>
			<span id="remove"><<选中删除到左边</span>
			<span id="remove_all"><<全部删除到左边</span>
		</div>
	</div>


</body>
<script type="text/javascript">
	/**
		1.先获取到select1的标签
		2.获取到select1下所有的option标签
		3.判断哪一个option标签被选中了
		4.被选中的标签添加到select2标签的下面
	 */
	  document.getElementById("add").onclick=function(){
		
	 	var select1=document.getElementById("select1");
		var select2=document.getElementById("select2");
		var ops=select1.getElementsByTagName("option");
		for(var i=0;i<ops.length;i++){
			var op=ops[i];
			if(op.selected==true){
				//被选中,把这个选项添加到select2
				select2.appendChild(op);
				i--;
			}
		}
	} 
	 
	 document.getElementById("add_all").onclick=function(){
		var select1=document.getElementById("select1");
		var select2=document.getElementById("select2");
		var ops=select1.getElementsByTagName("option");
		for(var i=0;i<ops.length;i++){
			select2.appendChild(ops[i]);
			i--;
		}
	}  
	 
	 //jquery的方式
	 $(function(){
		 $("#add").click(function(){
			//先获取select1下所有被选中的option的元素,添加到select2中取
			 $("#select2").append($("#select1 option:selected"));
		 });
		 
		 ("#add_all").click(function(){
			 $("#select2").append($("#select1 option"));
		 });
	 })
	 
	 
</script>
</html>

  

posted @ 2018-02-23 20:07  一日看尽长安花cxjj  阅读(104)  评论(0编辑  收藏  举报