|
Posted on
2006-08-04 10:39
weekzero
阅读( 2137)
评论()
编辑
收藏
举报
效果:
代码:
<html>
<head>
<title></title>

 <script language="javascript">
function Add(objA,objB)
 {
var tem=new Array();
with(objA)
for(i=length-1;i>=0;i--)
 if(options[i].selected) {tem[tem.length]=new Option(options[i].text,options[i].value);}
if(objA.selectedIndex>-1)
 {
for(i=0;i<objB.length;i++) tem[tem.length]=objB.options[i];
with(objB)
 {
length=0;
tem.sort(sortArr);
for(i=0;i<tem.length;i++) options[length]=new Option(tem[i].text,tem[i].value)
}
}
}
function sortArr(a,b)
 {
if(a.text>b.text)return 1;
if(a.text<b.text)return -1;
return 0;
}
//
//
function up(obj)
 {
var objO = new Option(obj.options[obj.selectedIndex].text,obj.options[obj.selectedIndex].value);
var selectedIndex = obj.selectedIndex;
if(selectedIndex>0)
 {
obj.options[selectedIndex].text = obj.options[selectedIndex-1].text;
obj.options[selectedIndex].value = obj.options[selectedIndex-1].value;
obj.options[selectedIndex-1].text = objO.text;
obj.options[selectedIndex-1].value = objO.value;
obj.selectedIndex = selectedIndex-1;
}
}
//
//
function down(obj)
 {
var objO = new Option(obj.options[obj.selectedIndex].text,obj.options[obj.selectedIndex].value);
var selectedIndex = obj.selectedIndex;
if(selectedIndex<obj.options.length-1)
 {
obj.options[selectedIndex].text = obj.options[selectedIndex+1].text;
obj.options[selectedIndex].value = obj.options[selectedIndex+1].value;
obj.options[selectedIndex+1].text = objO.text;
obj.options[selectedIndex+1].value = objO.value;
obj.selectedIndex = selectedIndex+1;
}
}
//
// 双击时添加到b
function dba(objA,objB)
 {
var objO=new Option(objA.options[objA.selectedIndex].text,objA.options[objA.selectedIndex].value)
objB.add(objO);
}
//
// 双击时删除b
function dbb(obj)
 {
obj.removeChild(obj.options[obj.selectedIndex]);
}
//
// 删除b中选中的项
function del(obj)
 {
for(var i=obj.options.length-1;i>=0;i--)
 {
if(obj.options[i].selected)
 {
obj.removeChild(obj.options[i]);
}
}
}
//
//
function getvalue(obj)
 {
var str="";
for(var i=0;i<obj.options.length;i++)
 {
if(str.length>0)
str = str + "," + obj.options[i].value;
else
str = obj.options[i].value;
}
document.getElementById("selectValue").innerText = str;
}
//
</script>

</head>
<body bgcolor="#CCCCCC">
<table cellspacing="0" cellpadding="0" width="448" border="0">
<tr>
<td width="45%" align="center">
<select style="width: 155px" multiple size="15" name="a" ondblclick="dba(this,document.getElementById('b'))">
<option value="av1" title="av1">at1</option>
<option value="av2" title="av2" style="background-color:#999999">at2</option>
<option value="av3" title="av3">at3</option>
<option value="av4" title="av4">at4</option>
<option value="av5" title="av5">at5</option>
<option value="av6" title="av6">at6</option>
<option value="av7" title="av7">at7</option>
</select>
</td>
<td>
<input onClick="Add(document.getElementById('a'),document.getElementById('b'))" type="button"
value=">>" style="width: 40px">
<br>
<input onClick="del(document.getElementById('b'))" type="button" value="Del" style="width: 40px">
<br>
<input onClick="up(document.getElementById('b'))" type="button" value="b↑" style="width: 40px">
<br>
<input onClick="down(document.getElementById('b'))" type="button" value="b↓" style="width: 40px">
</td>
<td width="45%" align="center">
<select style="width: 155px" multiple size="15" name="b" ondblclick="dbb(this)">
<option value="bv1">bt1</option>
<option value="bv2">bt2</option>
<option value="bv3">bt3</option>
<option value="bv4">bt4</option>
<option value="bv5">bt5</option>
<option value="bv6">bt6</option>
<option value="bv7">bt7</option>
<option value="bv8">bt8</option>
</select>
</td>
</tr>
<tr>
<td colspan="3" align="center">
<input type="button" name="button1" value="获得右边select值" onClick="getvalue(document.getElementById('b'))"></td>
</tr>
<tr>
<td colspan="3" align="center">
<div id="selectValue">
</div>
</td>
</tr>
</table>
</body>
</html>

|
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现