• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: 小 中 大 | 推荐给好友 上一篇 | 下一篇

关于如何动态地在同一页面实现两个<select>互传(s1 <==> s2)

发布: 2007-6-30 18:56 | 作者: admin | 来源: | 查看: 14次 | 进入软件测试论坛讨论

领测软件测试网 hello! 先祝大家中秋节快乐!

我们常常会碰到这样一个问题: 如何将在同一页面上的一个<select>或<listbox>的值传到另一个<select>或<listbox>中 ?这是一个很烦人的问题。可是有时候你偏偏会遇到。 那什么办呢?

下面是我“烟酒”了一个上午, 现贴上来让大家共享。 用的方法是很笨也挺麻烦。不过总是有点成就感的。呵呵!大家看看, 指点指点.....

<%@ Language=VBScript %>
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<script language="vbscript">

</script>
<body bgcolor="#ffffff">
<form name="form1" action="test01.asp" target="_self">
<p><TEXTAREA id=text01 name=text01></TEXTAREA></p>
<table>
<tr>
<td>
<select name="select1" language="javascript" size=5>
<option value=11111>11111</option>
<option value=22222>22222</option>
<option value=33333>33333</option>
</select>
</td>
<td>
<label onClick=do_select()><font color=#ff00dc><u>->> </u></font> </label><br><br>
<label onClick=do_select2()><font color=#ff00dc><u><<- </u></font> </label>
</td>
<%
str="function do_select() {" & vbCrlf & _
"if (document.form1.select1.options.length > 0) {"&vbCrlf&_
"var j=0;"&vbCrlf&_
"for(var i=0;i<document.form1.select1.options.length;i++) {"&vbCrlf & _
"if(document.form1.select1.options(i).selected) {"&vbCrlf& _
"j=j+1; break" & vbCrlf & "}"&vbCrlf & "}"&vbCrlf& _
"if (j > 0) {"&vbCrlf&_ "document.form1.sel2.options[document.form1.sel2.options.length] = new Option(" & _
"document.form1.select1.options[document.form1.select1.selectedIndex].value," & _
"document.form1.select1.options[document.form1.select1.selectedIndex].value);"& vbCrlf
Response.Write "<td><SELECT id=sel2 name=sel2 size=5>"
Response.Write "</select></td>"
str=str&vbCrlf&"document.form1.select1.options[document.form1.select1.selectedIndex]=null;"&vbCrlf & _
"if (document.form1.select1.options.length > 1) {"&vbCrlf @#&_
str=str&vbCrlf & "}" & vbCrlf & "}" & vbCrlf& "}" & vbCrlf& "}" & vbCrlf
Response.Write "<SCR"& "IPT LANGUAGE=""JavaScript"">" & vbCrlf
Response.Write str & vbCrlf & "</SCR"&"IPT>"& vbCrlf

%>

<%
str=""
str="function do_select2() {" & vbCrlf & _
"if (document.form1.sel2.options.length > 0) {"&vbCrlf&_
"var j=0;"&vbCrlf&_
"for(var i=0;i<document.form1.sel2.options.length;i++) {"&vbCrlf & _
"if(document.form1.sel2.options(i).selected) {"&vbCrlf& _
"j=j+1; break" & vbCrlf & "}"&vbCrlf & "}"&vbCrlf& _
"if (j > 0) {"&vbCrlf&_
"document.form1.select1.options[document.form1.select1.options.length] = new Option(" & _
"document.form1.sel2.options[document.form1.sel2.selectedIndex].value," & _
"document.form1.sel2.options[document.form1.sel2.selectedIndex].value);"& vbCrlf
str=str&"document.form1.sel2.options[document.form1.sel2.selectedIndex] =null;" & vbCrlf &"}"& vbCrlf &"}"& vbCrlf &"}"
Response.Write "<SCR"& "IPT LANGUAGE=""JavaScript"">" & vbCrlf
Response.Write str & vbCrlf & "</SCR"&"IPT>"& vbCrlf
%>

</tr>
</table>
</form>
</body>
</HTML>

很笨吧, 哈哈!
若那位大虾有更好的方法, 可别忘了给我寄上一份哦。
E_Mail: [email protected]

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:[email protected] 电话:010-51297073

软件测试 | 领测国际 | ISTQB | ISTQB官网 | TMMi | TMMi认证 | 国际软件测试工程师认证 | 领测软件测试网