敬业的IT人 >> 网站建设 >> Web编程 >> JavaScript >> 关于如何动态地在同一页面实现两个 互传 (s1 s2)

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

敬业的IT人 互联网 佚名 2008-1-10 16:33:52

 

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

    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>

粤ICP备06119539号
Copyright CiscoSky.Org,Some Rights Reserved.
Email:me1228#tom.com