js操作select 包括增加删除选项

今天闲来无事,写了一个小例子,用javascript 操作selecct,包括增加和删除option,例子是在一个select中,选择后,添加到另一个select中,在被添加的select中,可以将选项移除,下面是例子的原码,直接复制后,保存成html文件,即可运行,里面有详细的注释。

<%@ page contentType="text/html;charset=GB2312"%>
<html xmlns="http://www.w3.org/1999/xhtml">
<html>
 <head>
  <title>javaScript操作select教程</title>
  <script language="JavaScript">
   
   //向targerSelect 中添加选中的项
   function addOption(){
    var waitfor = document.getElementById("waitforSelect"); //获取所有的waitforSelect选项
    //循环所有的选项
    for(var i=0;i<waitfor.length;i++){
     //如果被选中,则向向targerSelect添加
     if(waitfor.options[i].selected){
      var values = waitfor.options[i].value;//获取被选中select的值
      var texts   = waitfor.options[i].text;//获取被选中select的text
      document.getElementById("targerSelect").options.add(new Option(texts,values)) ;//添加选项
     } 
    }
   }
   //移除targerSelect 中选中的项
   function delOption(){
    var targer = document.getElementById("targerSelect");//获取所有的targerSelect的选项
    for(var i=0;i<targer.length;i++){
     //判断是否选中
     if(targer.options[i].selected){
       targer.remove(i);//移除选中的项
       i=-1;//重新开始循环 移除一个后,option的位置变了,必须重新循环
     } 
    }
   }
  </script>
 </head>
 
  <table border="1" style="width: 50%">
   <tr>
    <td style="width:20%">
     待选择域 :
     <select name="waitforSelect" id="waitforSelect" size="6" multiple="multiple" style="width: 200px" οndblclick="addOption();" >
      <option value="1">text1</option>
      <option value="2">text2</option>
      <option value="3">text3</option>
      <option value="4">text4</option>
      <option value="5">text5</option>
      <option value="6">text6</option>
      <option value="7">text7</option>
      <option value="8">text8</option>
      <option value="9">text9</option>
     </select>
    </td>
    <td style="width:10%">
     <input type="button" name="button1" value="移入" οnclick="addOption();"/>
     <input type="button" name="button2" value="移出" οnclick="delOption();"/>
    </td>
    <td style="width:20%">
     移入选择域:
     <select name="targerSelect" id="targerSelect" size="6" multiple="multiple" οndblclick="delOption();" style="width: 200px">

     </select>
    </td>
   </tr>
  </table>
 
 <body>
  
 </body>
 
</html>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值