JavaScript js 左右移动下拉列表选项

  1. 最开始想每个方法中用一个循环搞定,后来发现循环删除后。options的索引和集合就发生了变化,删除就不成功。有时候还出现selected为空的现象,2个循环就over了;  
  2.   
  3. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
  4. <html>  
  5.   <head>  
  6.     <title>addMulitOptions.html</title>  
  7.       
  8.     <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">  
  9.     <meta http-equiv="description" content="this is my page">  
  10.     <meta http-equiv="content-type" content="text/html; charset=UTF-8">  
  11.     <script type="text/javascript">  
  12.         function moveLeft() {  
  13.             var lBox = document.getElementById("leftBox");  
  14.             var rBox = document.getElementById("rightBox");  
  15.             var count = 0;;  
  16.             for (var i = 0, len = lBox.length; i < len; i++) {  
  17.                 if (lBox[i].selected) {  
  18.                     rBox.options.add(new Option(lBox.options[i].text, lBox[i].value));  
  19.                     count++;  
  20.                 }  
  21.             }  
  22.             for (var i = 0; i < count; i++) {  
  23.                 lBox.remove(lBox.selectedIndex);  
  24.             }  
  25.         }  
  26.           
  27.         function moveRight() {  
  28.             var lBox = document.getElementById("leftBox");  
  29.             var rBox = document.getElementById("rightBox");  
  30.             var count = 0;;  
  31.             for (var i = 0, len = rBox.length; i < len; i++) {  
  32.                 if (rBox[i].selected) {  
  33.                     lBox.options.add(new Option(rBox.options[i].text, rBox[i].value));  
  34.                     count++;  
  35.                 }  
  36.             }  
  37.             for (var i = 0; i < count; i++) {  
  38.                 rBox.remove(rBox.selectedIndex);  
  39.             }  
  40.         }  
  41.     </script>  
  42.   </head>  
  43.     
  44.   <body>  
  45.     <select id="leftBox" multiple="multiple" style="height: 200px; width: 100px;">  
  46.         <option value="1">a</option>  
  47.         <option value="2">b</option>  
  48.         <option value="3">c</option>  
  49.         <option value="4">d</option>  
  50.     </select>  
  51.     <input type="button" value="&gt;&gt;" οnclick="moveLeft()"/>  
  52.     <input type="button" value="&lt;&lt;" οnclick="moveRight()"/>  
  53.     <select id="rightBox" multiple="multiple" style="height: 200px; width: 100px;">  
  54.         <option value="11">A</option>  
  55.         <option value="22">B</option>  
  56.         <option value="33">C</option>  
  57.         <option value="44">D</option>  
  58.     </select>  
  59.   </body>  
  60. </html>  
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值