2016-08-19 10 views
0

Ich versuche einen anderen select2 zurückzusetzen, wenn select2-removed Event ausgelöst wird, aber ich kann nur andere dom-Elemente beeinflussen. Ich möchte das zweite select2 deaktivieren, wenn der erste select2-Wert entfernt wird. Das ist mein Code: "Mache ich etwas falsch? Meine select2 Version ist 3.5. Danke im Voraus.Select2 select2-removed Event hat keine Auswirkungen auf select2

$('#element_select2_1').on("select2-removed", function (e) { 
     $('#dom_element').attr('disabled', 'disabled'); 
     $('#another_dom_element').attr('disabled', 'disabled'); 

     $('#element_select2_2').select2('disable'); 
}); 

Antwort

0

ich keine wirkliche Dokumentation "select2-removed" überall, dass Ihre Veranstaltung finden konnte? Also habe ich einen Code erstellt, der 1. zwei select2s erstellt, eine Schaltfläche erstellt. Registrieren Sie ein select2 destroy-Ereignis auf der ersten selec2 und eine Schaltfläche, die die selec2 zerstört, die das Ereignis auslöst. Das ausgelöste Ereignis deaktiviert das zweite select2. Ist das, was du versuchst zu tun?

  <script> 
       $(function ($) { 
        // first select2 
        $("#sel1").select2(); 
        // second select2 
        $("#sel2").select2(); 
        // register event to detect select2 being destroyed 
        $("#sel1").next(".select2-container").on("remove", function() { $("#sel2").prop("disabled", true); }) 

        // button that destroys the select2 triggering the event 
        $("#btn").button().click(function() { 

          $("#sel1").select2("destroy"); 

        }); 
       }) 
      </script> 
     </head> 
     <body> 
      <form> 
       <select tabindex="0" id="sel1" aria-hidden="false"> 
        <option value="AQ">Antarctica</option> 
        <option value="AI">Anguilla</option> 
        <option value="AG">Antigua and Barbuda</option> 
        <option value="AR">Argentina</option> 
        <option value="AM">Armenia</option> 
        <option value="AW">Aruba</option> 
       </select><br /> 
       <select id="sel2"> 
        <option value="BS">Bahamas</option> 
        <option value="BH">Bahrain</option> 
        <option value="BD">Bangladesh</option> 
        <option value="BB">Barbados</option> 
        <option value="BY">Belarus</option> 
        <option value="BE">Belgium</option> 
        <option value="BZ">Belize</option> 
       </select><br /> 
       <button id="btn" type="button">remove</button> 

      </form> 
     </body> 
0

unter der Annahme, „select2-entfernt“ wie erwartet Brennen, versuchen

$('#element_select2_2').prop('disabled', true); 

Dokumentation zeigt die Eigenschaftswerte an den Auswahl nicht die select2 Steuerung angewendet wird.

https://select2.github.io/examples.html#disabled