在窗体中有两个多选列表,用户可以从左侧列表中

系统 1609 0

在窗体中有两个多选列表,用户可以从左侧列表中选择任意项,添加到右侧列表中。反之亦然。

<form name="myForm">
<table>
<tr valign="top">
<td>
<select name="leftList" multiple size="6" style="width:50px;">
<option>a</option>
<option>b</option>
<option>c</option>
</select>
</td>
<td>
<!-- 通过事件onclick调用JavaScript的moveList函数 -->
<input type="button" name="to" value=" >> " onclick="moveList('leftList','rightList')"><p>
<input type="button" name="backTo" value=" << " onclick="moveList('rightList','leftList')"><p>
</td>
<td>
<select name="rightList" multiple size="6" style="width: 50px;">
<option>d</option>
<option>e</option>

<option>f</option>
</select>
</td>
</tr>
</table>
</form>

 

<script language="JavaScript"> 
// moveList用于对两个多选列表进行选项的移动操作
// from为"需要移动"的列表名称,to为"移动到"列表名称
function moveList(from,to) { 
var fromList = document.myForm.elements[from];
var fromLen = fromList.options.length;

var toList = document.myForm.elements[to];
var toLen = toList.options.length;

// current 为"需要移动"列表中的当前选项序号
var current = fromList.selectedIndex;
// 如果"需要移动"列表中有选择项,则进行移动操作
while (current>-1) {
// o为"需要移动"列表中当前选择项对象
var o = fromList.options[current];
var t = o.text;
var v = o.value;
// 根据已选项新建一个列表选项
var optionName = new Option(t, v, false, false);
// 将该选项添加到"移动到"列表中
toList.options[toLen]= optionName;
toLen++;
// 将该选项从"需要移动"列表中清除
fromList.options[current]=null;

current = fromList.selectedIndex;
}
}

</script>

 

 

程序说明:

//HTML DOM selectedIndex  属性

HTML DOM Select  对象

定义和用法

selectedIndex  属性可设置或返回下拉列表中被选选项的索引号。

注释:若允许多重选择,则仅会返回第一个被选选项的索引号。

语法

selectObject.selectedIndex=number

 

HTML DOM options 集合

 

 

定义和用法

option 集合可返回包含 <select> 元素中所有 <option> 的一个数组。

注释:数组中的每个元素对应一个 <option> 标签 - 由 0 起始。

语法

      selectObject.options[]
    

说明

options[] 集合并非一个普通的 HTMLcollection。为了和早期的浏览器向后兼容,这个集合有某种特殊的行为:允许通过 Select 对象来改变显示的选项:

  • 如果把 options.length 属性设置为 0,Select 对象中所有选项都会被清除。
  • 如果 options.length 属性的值比当前值小,出现在数组尾部的元素就会被丢弃。
  • 如果把 options[] 数组中的一个元素设置为 null,那么选项就会从 Select 对象中删除。
  • 可以通过构造函数 Option() 来创建一个新的 option 对象(需要设置 options.length 属性)。

 

在窗体中有两个多选列表,用户可以从左侧列表中选择任意项,添加到右侧列表中。反之亦然。


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论