working not bootstrap jquery select

not - jQuery moviendo los valores de MultiSelect a otro MultiSelect



select2 set selected value (8)

Así que tengo un cuadro MultiSelect con valores x que necesito la capacidad de mover a otro cuadro MultiSelect y viceversa.

<select class="boxa" multiple="multiple"> <option value="volvo">Volvo</option> <option value="saab">Saab</option> <option value="mercedes">Mercedes</option> <option value="audi">Audi</option> </select> <select class="boxb" multiple="multiple"> </select>

Debe mover todos o uno de los valores de boxa a boxb en un clic de botón, también con la capacidad de mover los valores de boxb a boxa.

¿Tiene jQuery algo como esto o es un fragmento de código personalizado?


Aquí va mi código html

<div> <select multiple id="select1"> <option value="1">Option 1</option> <option value="2">Option 2</option> <option value="3">Option 3</option> <option value="4">Option 4</option> <option value="5">Option 5</option> <option value="6">Option 6</option> </select> <a href="#" id="add">add &gt; &gt;</a> </div> <div> <select multiple id="select2"></select> <a href="#" id="remove">remove &lt; &lt;</a> </div>

y código Javascript

$("#add").click(function(){ $("#select1 option:selected").remove().appendTo($("#select2")); }) $("#remove").click(function(){ $("#select2 option:selected").remove().appendTo($("#select1")); })

Asegúrese de que importó el archivo jquery.js .


Hay un plugin jquery llamado crossSelect que parece hacer lo que quieres.

jQuery no tiene esto incorporado, deberías encontrar un complemento que te guste y usarlo, o escribir el tuyo. (Y, por supuesto, no tiene que usar jQuery para escribir o usarlo, podría implementarlo en javascript puro si lo desea)


Intente lo siguiente (tomado de blog.jeremymartin.name/2008/02/… )

<html> <head> <script src="js/jquery.js" type="text/javascript"></script> <script type="text/javascript"> $().ready(function() { $(''#add'').click(function() { return !$(''#select1 option:selected'').remove().appendTo(''#select2''); }); $(''#remove'').click(function() { return !$(''#select2 option:selected'').remove().appendTo(''#select1''); }); }); </script> <style type="text/css"> a { display: block; border: 1px solid #aaa; text-decoration: none; background-color: #fafafa; color: #123456; margin: 2px; clear:both; } div { float:left; text-align: center; margin: 10px; } select { width: 100px; height: 80px; } </style> </head> <body> <div> <select multiple id="select1"> <option value="1">Option 1</option> <option value="2">Option 2</option> <option value="3">Option 3</option> <option value="4">Option 4</option> </select> <a href="#" id="add">add &gt;&gt;</a> </div> <div> <select multiple id="select2"></select> <a href="#" id="remove">&lt;&lt; remove</a> </div> </body> </html>




Tuve el mismo problema pero encontré una forma de evitarlo.

<div> <select multiple id="select1"> <option value="1">Option 1</option> <option value="2">Option 2</option> <option value="3">Option 3</option> <option value="4">Option 4</option> </select> </div> <div> <select multiple id="select2"></select> </div>

jquery

$(''#select1'').click(function () { return !$(''#select1 option:selected'').remove().appendTo(''#select2''); }); $(''#select2'').click(function () { return !$(''#select2 option:selected'').remove().appendTo(''#select1''); });

Si desea un botón, agregue un complemento >> y haga clic en el selector aquí.

ejemplo http://jsfiddle.net/diffintact/GJJQw/3/


$().ready(function() { $(''#add'').click(function() { return !$(''#select1 option:selected'').remove().appendTo(''#select2''); }); $(''#remove'').click(function() { return !$(''#select2 option:selected'').remove().appendTo(''#select1''); }); });


$(''#boxa option'').appendTo(''#boxb'');