es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo se podría gestionar dos select2 iguales, ocultando y mostrando los elementos seleccionados desde otro select2?

De acuerdo con esta pregunta, puedo agregar un elemento seleccionado a otro select.

Consideremos que tenemos dos select2, con las mismas opciones.
Cuando selecciono un elemento de box1, ese mismo elemento debería eliminarse de box2 y el usuario no podría seleccionarlo.
Lo proporciono en jsfiddle.net.

Ahora, si quiero deseleccionarlo, box2 debería tener ese elemento nuevamente.

$ (“#Box1”).select2 ();
$ (“#Box2”).select2 ();

$ (“#Box1”).on (“change”, function () {
$ .each ($ (# 39; # Box1 # 39;). select2 (data ‘), function (i, item) {
$ (‘ # Box2 option [value = “‘+ item.id + ‘”] ‘). remove ();
});
});

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    De acuerdo con esta pregunta, es posible agregar un elemento seleccionado a otro select. He proporcionado un ejemplo funcional en jsfiddle.net.

    Para deseleccionar el elemento, el box2 debe tener ese elemento de nuevo. El siguiente código se puede utilizar para lograr esto:

    $("#Box1").select2();
    $("#Box2").select2();
    
    $("#Box1").on("change", function() {
        $.each($('#Box1').select2('data'), function(i, item) {
           $('#Box2 option[value="'+item.id+'"]').remove();
             });
    });
    

Comments are closed.