ListBox实现上移,下移,左移,右移操作

[html]  view plain  copy
  1. <html>  
  2. <head>  
  3.     <title>Javascript版选择下拉菜单互移且排序</title>  
  4.     <meta http-equiv="Content-Type" content="text/html; charset=gb2312">  
  5. </head>  
  6. <body>  
  7.     <p>选定一项或多项然后点击添加或移除(按住shift或ctrl可以多选),或在选择项上双击进行添加和移除。</p>  
  8.     <form method="post" name="myform">  
  9.     <table border="0" width="300">  
  10.         <tr>  
  11.             <td width="40%">  
  12.                 <select style="width:100px; height:200px" multiple name="list1" size="12" ondblclick="moveOption(document.myform.list1, document.myform.list2)">  
  13.                     <option value="北京">北京</option>  
  14.                     <option value="上海">上海</option>  
  15.                     <option value="山东">山东</option>  
  16.                     <option value="安徽">安徽</option>  
  17.                     <option value="重庆">重庆</option>  
  18.                     <option value="福建">福建</option>  
  19.                     <option value="甘肃">甘肃</option>  
  20.                     <option value="广东">广东</option>  
  21.                     <option value="广西">广西</option>  
  22.                     <option value="贵州">贵州</option>  
  23.                     <option value="海南">海南</option>  
  24.                     <option value="河北">河北</option>  
  25.                     <option value="黑龙江">黑龙江</option>  
  26.                     <option value="河南">河南</option>  
  27.                     <option value="湖北">湖北</option>  
  28.                     <option value="湖南">湖南</option>  
  29.                     <option value="内蒙古">内蒙古</option>  
  30.                     <option value="江苏">江苏</option>  
  31.                     <option value="江西">江西</option>  
  32.                     <option value="吉林">吉林</option>  
  33.                     <option value="辽宁">辽宁</option>  
  34.                     <option value="宁夏">宁夏</option>  
  35.                     <option value="青海">青海</option>  
  36.                     <option value="山西">山西</option>  
  37.                     <option value="陕西">陕西</option>  
  38.                     <option value="四川">四川</option>  
  39.                     <option value="天津">天津</option>  
  40.                     <option value="西藏">西藏</option>  
  41.                     <option value="新疆">新疆</option>  
  42.                     <option value="云南">云南</option>  
  43.                     <option value="浙江">浙江</option>  
  44.                     <option value="香港">香港</option>  
  45.                     <option value="澳门">澳门</option>  
  46.                     <option value="台湾">台湾</option>  
  47.                     <option value="其他">其他</option>  
  48.                 </select>  
  49.             </td>  
  50.             <td width="20%" align="center">  
  51.                 <input type="button" value=">>" onclick="moveOption(document.myform.list1, document.myform.list2)"><br />  
  52.                 <br />  
  53.                 <input type="button" value="<<" onclick="moveOption(document.myform.list2, document.myform.list1)">  
  54.             </td>  
  55.             <td width="40%">  
  56.                 <select style="width:100px; height:200px" multiple name="list2" size="12" ondblclick="moveOption(document.myform.list2, document.myform.list1)">  
  57.                 </select>  
  58.             </td>  
  59.             <td>  
  60.                 <button onclick="changepos(list2,-1)" type="button">  
  61.                     ∧</button>  
  62.                 <br />  
  63.                 <button onclick="changepos(list2,1)" type="button">  
  64.                     ∨</button>  
  65.             </td>  
  66.         </tr>  
  67.     </table>  
  68.     值:<input type="text" name="city" size="40">  
  69.     </form>  
  70.     <script language="JavaScript">   
  71.     <!--  
  72.         function moveOption(e1, e2) {  
  73.             try {  
  74.                 for (var i = 0; i < e1.options.length; i++) {  
  75.                     if (e1.options[i].selected) {  
  76.                         var e = e1.options[i];  
  77.                         e2.options.add(new Option(e.text, e.value));  
  78.                         e1.remove(i);  
  79.                         i = i - 1  
  80.                     }  
  81.                 }  
  82.                 document.myform.city.value = getvalue(document.myform.list2);  
  83.             }  
  84.             catch (e) { }  
  85.         }  
  86.   
  87.         function getvalue(geto) {  
  88.             var allvalue = "";  
  89.             for (var i = 0; i < geto.options.length; i++) {  
  90.                 allvalue += geto.options[i].value + ",";  
  91.             }  
  92.             return allvalue;  
  93.         }  
  94.   
  95.         function changepos(obj, index) {  
  96.             if (index == -1) {  
  97.                 if (obj.selectedIndex > 0) {  
  98.                     obj.options(obj.selectedIndex).swapNode(obj.options(obj.selectedIndex - 1))  
  99.                 }  
  100.             }  
  101.             else if (index == 1) {  
  102.                 if (obj.selectedIndex < obj.options.length - 1) {  
  103.                     obj.options(obj.selectedIndex).swapNode(obj.options(obj.selectedIndex + 1))  
  104.                 }  
  105.             }  
  106.         }   
  107.     //-->   
  108.     </script>  
  109. </body>  
  110. </html>  

[html]  view plain  copy
  1. <html>    
  2. <head>    
  3.     <title>Jquery版选择下拉菜单互移且排序</title>    
  4.     <meta http-equiv="Content-Type" content="text/html; charset=gb2312">    
  5.     <script src="http://static.blog.csdn.net/scripts/jquery.js" type="text/javascript"></script>  
  6. </head>    
  7. <body>    
  8.     <p>选定一项或多项然后点击添加或移除(按住shift或ctrl可以多选),或在选择项上双击进行添加和移除。</p>    
  9.     <form method="post" name="myform">    
  10.     <table border="0" width="300">    
  11.         <tr>    
  12.             <td width="40%">    
  13.                 <select style="width:100px; height:200px"  multiple name="list1" id="list1"  ondblclick="ListBox_Move('list1','list2')">    
  14.                     <option value="北京">北京</option>    
  15.                     <option value="上海">上海</option>    
  16.                     <option value="山东">山东</option>    
  17.                     <option value="安徽">安徽</option>    
  18.                     <option value="重庆">重庆</option>    
  19.                     <option value="福建">福建</option>    
  20.                     <option value="甘肃">甘肃</option>    
  21.                     <option value="广东">广东</option>    
  22.                     <option value="广西">广西</option>    
  23.                     <option value="贵州">贵州</option>    
  24.                     <option value="海南">海南</option>    
  25.                     <option value="河北">河北</option>    
  26.                     <option value="黑龙江">黑龙江</option>    
  27.                     <option value="河南">河南</option>    
  28.                     <option value="湖北">湖北</option>    
  29.                     <option value="湖南">湖南</option>    
  30.                     <option value="内蒙古">内蒙古</option>    
  31.                     <option value="江苏">江苏</option>    
  32.                     <option value="江西">江西</option>    
  33.                     <option value="吉林">吉林</option>    
  34.                     <option value="辽宁">辽宁</option>    
  35.                     <option value="宁夏">宁夏</option>    
  36.                     <option value="青海">青海</option>    
  37.                     <option value="山西">山西</option>    
  38.                     <option value="陕西">陕西</option>    
  39.                     <option value="四川">四川</option>    
  40.                     <option value="天津">天津</option>    
  41.                     <option value="西藏">西藏</option>    
  42.                     <option value="新疆">新疆</option>    
  43.                     <option value="云南">云南</option>    
  44.                     <option value="浙江">浙江</option>    
  45.                     <option value="香港">香港</option>    
  46.                     <option value="澳门">澳门</option>    
  47.                     <option value="台湾">台湾</option>    
  48.                     <option value="其他">其他</option>    
  49.                 </select>    
  50.             </td>    
  51.             <td width="20%" align="center">    
  52.                 <input type="button" value=">>" onclick="ListBox_Move('list1','list2')"><br />    
  53.                 <br />    
  54.                 <input type="button" value="<<" onclick="ListBox_Move('list2','list1')">    
  55.             </td>    
  56.             <td width="40%">    
  57.                 <select style="width:100px; height:200px"  multiple name="list2" id="list2"  ondblclick="ListBox_Move('list2','list1')">    
  58.                 </select>    
  59.             </td>    
  60.             <td>    
  61.                 <button onclick="ListBox_Order('list2','up')" type="button">    
  62.                     ∧</button>    
  63.                 <br />    
  64.                 <button onclick="ListBox_Order('list2','down')" type="button">    
  65.                     ∨</button>    
  66.             </td>    
  67.         </tr>    
  68.     </table>    
  69.     值:<input type="text" name="city" size="40">    
  70.     </form>    
  71.     <script language="JavaScript">      
  72.     function ListBox_Move(listfrom,listto)  
  73.     {  
  74.         var size = $("#" + listfrom + " option").size();  
  75.         var selsize = $("#" + listfrom + " option:selected").size();  
  76.         if(size>0 && selsize>0)  
  77.         {  
  78.             $.each($("#"+listfrom+" option:selected"), function(i,own){  
  79.                 $(own).appendTo($("#" + listto));  
  80.                 $("#" + listfrom + "").children("option:first").attr("selected",true);   
  81.             });  
  82.         }  
  83.     }  
  84.   
  85.     function ListBox_Order(ListName,action)  
  86.     {  
  87.         var size = $("#"+ListName+" option").size();  
  88.         var selsize = $("#"+ListName+" option:selected").size();  
  89.         if(size > 0 && selsize > 0)  
  90.         {  
  91.             $.each($("#"+ListName+" option:selected"),function(i,own){  
  92.                 if(action == "up")  
  93.                 {  
  94.                     $(own).prev().insertAfter($(own));  
  95.                 }  
  96.                 else if(action == "down")//down时选中多个连靠则操作没效果  
  97.                 {  
  98.                     $(own).next().insertBefore($(own));  
  99.                 }  
  100.             })  
  101.         }  
  102.     }  
  103.     </script>    
  104. </body>    
  105. </html>    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值