<table border=0 cellpadding=0 cellspacing=0><form name=meizz>
  <tr><td>
    <select id=list1 size=8 ondblclick="moveOption(this, this.form.list2)">
      <option value=A>aaaaaaaaaa
      <option value=B>bbbbbbbbbb
      <option value=C>cccccccccc
      <option value=D>dddddddddd
      <option value=E>eeeeeeeeee
      <option value=F>ffffffffff
      <option value=G>gggggggggg
      <option value=H>hhhhhhhhhh
    </select></td>
  <td width=40 align=center>
    <input name=add type=button value=">>>" onclick="moveOption(this.form.list1, this.form.list2)"><br><br>
    <input name=sub type=button value="<<<" onclick="moveOption(this.form.list2, this.form.list1)">
  </td><td>
    <select id=list2 size=8 ondblclick="moveOption(this, this.form.list1)">
    </select>
  </td></tr></form>
</table><script language="JavaScript"><!--
function moveOption(e1, e2){
    try{
        var e = e1.options[e1.selectedIndex];
        e2.options.add(new Option(e.text, e.value));
        e1.options.remove(e1.selectedIndex);
    }   catch(e){}
}
//--></script>

解决方案 »

  1.   

    或者双击直接将选中的内容传递:<form>
      <select id=list1 size=8 ondblclick="moveOption(this, this.form.list2)">
        <option value=A>aaaaaaaaaa
        <option value=B>bbbbbbbbbb
        <option value=C>cccccccccc
        <option value=D>dddddddddd
        <option value=E>eeeeeeeeee
        <option value=F>ffffffffff
        <option value=G>gggggggggg
        <option value=H>hhhhhhhhhh
      </select>
      <select id=list2 size=8 ondblclick="moveOption(this, this.form.list1)">
      </select>
    </form>
    <script language="JavaScript"><!--
    function moveOption(e1, e2){
        try{
            var e = e1.options[e1.selectedIndex];
            e2.options.add(new Option(e.text, e.value));
            e1.options.remove(e1.selectedIndex);
        }   catch(e){}
    }
    //--></script>