<table>
<tr>
<td>
<select id="ls" multiple NAME="ls">
<option value=8>8</option>
<option value=6>6</option>
<option value=4>4</option>
<option value=12>12</option>
</select>
</td>
<td valign=middle>
<input type=button value="->" id=btnR onclick="selMove('R')"><br/>
<input type=button value="<-" id="btnL" onclick="selMove('L')">
</td>
<td>
<select id="rs" multiple NAME="rs">
</select>
</td>
</tr>
</table>
<script language=javascript>function selMove(flag)
{
// 根据flag判断是向左(L)还是向右移动(R)
var fromObj = (flag=='R'?ls:rs);
var toObj = (fromObj.id=="ls"?rs:ls);
var selArr = [];for(var i=fromObj.options.length-1;i>=0;i--)// 对源列表做一个遍历
{
if(fromObj.options[i].selected) // 判断选项是否被选中
{
selArr.push(fromObj.options[i].value); //将选中项存进数组
fromObj.options.remove(i);
}
}
for(var i=toObj.options.length-1;i>=0;i--)// 对目标列表做一个遍历
{selArr.push(toObj.options[i].value);} //将所有存进数组selArr.sort(function(a,b){return a-b}); //排序for(var i=0;i<selArr.length;i++)
{
var op = new Option(selArr[i],selArr[i]);
//op.selected = true;
toObj.options[i]=op;
}
}
</script>