2016-03-27 4 views
0

Ich versuche, eine Abhängigkeit zwischen zwei verschiedenen Auswahlfeldern zu implementieren. Bei Verwendung des folgenden jQuery-Codes funktionieren die meisten normalen Browser einwandfrei (Chrome/FF), IE/Edge/Some Mobile-Browser sind jedoch vom Code nicht betroffen.jQuery wählen Sie die Änderung auf einigen Mobile/IE-Browsern

jQuery(document).ready(function($){ 
     $("#selectbox-dependency").change(function() { 

      if ($(this).val() == "Banana") {  //value of selectbox #1 
       $(".yellow").show(); //classes for each of the options in selectbox #2 
       $(".red").hide(); 
       $(".black").hide(); 
       $(".gold").hide(); 
      }else if ($(this).val() == "cherry"){ 
       $(".yellow").hide(); 
       $(".red").show(); 
       $(".black").hide(); 
       $(".gold").hide(); 
      } 

     }); 
    }); 

Vielen Dank!

+0

ich nicht versuchen, mit .blur(), aber die Sache ist, ich versuche zu zeigen,/bestimmte Optionen nur ausblenden, wenn das erste Auswahlfeld geändert wird, also nicht sicher, dass es helfen würde. – tlt2w

+0

haben Sie mit .on versucht ('change', function() {}); ? Ich habe den ersten Kommentar entfernt, da es keinen Kontext für dieses Problem gab. Ich fand auch diesen Beitrag, vielleicht hilft es [jQuery .change() -Event nicht in IE] (http://stackoverflow.com/questions/9921498/jquery-change-event-not-fire-in-ie) – rmjoia

+0

Ich habe versucht beide 'jQuery (" # selecbox-dependency ") on (" change "," select ", function() {' und 'jQuery (" .container "). on (" change "," # selectbox-dependency ", function() {,' aber leider kann ich es nicht zum laufen bringen. – tlt2w

Antwort

0

Es könnte ein Problem mit val() auf dem Handy sein. Sehen Sie, wenn diese Antwort erhält man nach:

http://stackoverflow.com/questions/4709093/jquery-mobile-val-not-working 
0

Die Kernfrage war, dass sich versteckt (.Hide()) die Optionen nicht für IE und viele mobile Browser nicht funktioniert. Ich landete mit dieser Anpassung: (Nicht 100% optimal, aber gut genug, und funktioniert auf allen Browsern)

jQuery(document).ready(function($){ 
    $("#selectbox-dependency").change(function() { 

     if ($(this).val() == "Banana") {  //value of selectbox #1 
      $(".yellow").prop('disabled', false); //classes for each of the options in selectbox #2 
      $(".red").prop('disabled', true); 
      $(".black").prop('disabled', true); 
      $(".gold").prop('disabled', true); 
     }else if ($(this).val() == "cherry"){ 
      $(".yellow").prop('disabled', true); 
      $(".red").prop('disabled', false); 
      $(".black").prop('disabled', true); 
      $(".gold").prop('disabled', true); 
     } 

    }); 
}); 
Verwandte Themen