在开发动态网站程序是,经常会遇到将下拉列表中的选项进行多项移除或者多项移入。实例如下:

javascript代码:

<script language="javascript">
function allsel(n1,n2)
{
  while(n1.selectedIndex!=-1)
  {
   var indx=n1.selectedIndex;
 
   var t=n1.options[indx].text;
   n2.options.add(new Option(t));
   n1.remove(indx);
  }
}
</script>

html代码:

<select name="sel_place1" size="6" multiple class="wenbenkuang" ></select>

本实例主要应用javascript的while循环语句,判断如果select元素的selectIndex属性值不为-1,则获取在下拉列表中的选中项的索引值和对应文本,然后应用select元素对象的add()方法将此选项添加到另一个下拉列表中,并应用select元素对象的remove()方法移除当前下拉列表中的此选项。

不过以上代码还有不足之处,虽说是把select列表中的选项移入到另外个select列表中,但是,只是获取到原列表中的text值,并没有得到原来的value值,怎么办呢?原来new Option()方法是可以添加value值的,如new Option(t,v);这样就可以让原有的选项把text跟value值一块移入到另外的select列表中了。javasript代码修改为:

 <script language="javascript">
function allsel(n1,n2)
{
  while(n1.selectedIndex!=-1)
  {
   var indx=n1.selectedIndex;
 
   var t=n1.options[indx].text;
 var v=n1.options[indx].value;
   n2.options.add(new Option(t,v));
   n1.remove(indx);
  }
}
</script>

 

相关文章:

  • 2022-02-19
  • 2021-07-14
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-18
  • 2022-12-23
猜你喜欢
  • 2022-02-14
  • 2022-02-27
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-26
相关资源
相似解决方案