如何使用jquery将列表框值传输到另一个列表框

时间:2014-04-15 09:45:29

标签: javascript jquery html css listbox

我想使用jquery将列表框1中的选定值传输到listbox 2 我有下面的示例代码,但它不起作用。

嗨,大家好,我想使用jquery将列表框1中的选定值传输到listbox 2 viceversa 我有下面的示例代码,但它不起作用。

嗨,大家好,我想使用jquery将列表框1中的选定值传输到listbox 2 viceversa 我有下面的示例代码,但它不起作用。

<!DOCTYPE html>
    <head>
    <meta charset="utf-8">
    <title>Listbox.js Demo</title>



    <script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js">  </script>
    <script>
    $(function () {
      $('select#planets').listbox();
      $('select#country').listbox({'searchbar': true});
    });
  </script>

    <script language="javascript" type="text/javascript">

    //this will move selected items from source list to destination list            
    function move_list_items(sourceid, destinationid)
    {
        $("#"+sourceid+"  option:selected").appendTo("#"+destinationid);
    }  
    </script>

  <!-- include listbox.js -->
  <link href="../src/listbox.css" rel="stylesheet">
  <script src="../src/listbox.js"></script>

    <style>
      * {
      margin:       0px;
      padding:      0px;
    }

    html, body {
      font-size:    12px;
      font-family:  sans-serif;
      background:   #f5f5f5;
    }

    .cover {
      padding:      20px 30px;
      border:       1px solid #dedede;
      border-radius:4px;
      background:   #f9f9f9;
      box-shadow:   0px 0px 10px #a8a8a8;

      /* centering */
      position:     absolute;
      top:          50%;
      left:         50%;
      margin-top:  -180px;
      margin-left: -222px;
    }

    .lbjs { float: left; }
    .lbjs:last-of-type { margin-left: 20px; }
  </style>
    <body>

      <div class="cover">
    <select id="country" name="country" >
      <option>Afghanistan</option>
      <option>Albania</option>
      <option>Algeria</option>
      <option>Andorra</option>
    </select>
    <input id="moveright" type="button" value="  >  "     onclick="move_list_items('country','planets');" />

    <select id="planets" multiple="multiple" name="planets">
      <option>Alderaan</option>
      <option>Corellia</option>
      <option>Endor</option>
      <option>Kashyyyk</option>
    </select>
  </div><!-- .cover -->

</body>
</html>

2 个答案:

答案 0 :(得分:1)

$(document).ready(function () {   
 $("#moveright").click(function(){
       $("#country > option:selected").each(function(){
            $(this).remove().appendTo("#planets");
       });
    });
});

演示:

http://jsfiddle.net/Rc7qP/

更新

http://jsfiddle.net/fLAy6/1/

答案 1 :(得分:1)

请查看following link它似乎正常工作

$("#moveright").on('click' , function(){
    alert("test");
    var obj = ($("#country option:selected"));
    $.each(obj, function(index , item){ 
         $("#planets").append($(this));
    });

});

$("#moveleft").on('click' , function(){
    alert("test");
    var obj = ($("#planets option:selected"));    
     $.each(obj, function(index , item){ 
         $("#country").append($(this));
    });
});