2016-07-15 10 views
0

ich möchte einige Elemente in einer Mehrfachauswahlliste ein-/ausblenden; Mein Code funktioniert in Chrome gut, aber ich kann nicht herausfinden, warum es nicht in IE funktioniert. Hier nur eine vereinfachte Version meines Codes:Option ausblenden funktioniert nicht IE

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 

<select id="ID_DropDown" multiple="multiple" name="DropDown"> 
<option value="1">value1</option> 
<option value="2">value2</option> 
<option value="3">value3</option> 
</select> 

<script type="text/javascript"> 
$(document).ready(function() { 
    for (var i = 0; i < ID_DropDown.options.length; i++) { 
     $("#ID_DropDown option[value=" + ID_DropDown.options[i].value + "]").hide(); 
    } 
}); 
</script> 

Irgendeine Idee? Wirklich dank

+0

Könnten Sie es deaktivieren, anstatt sie zu verbergen? – Barmar

+0

Es wird nicht in IE sowie einigen anderen Browsern funktionieren. Die Auswahlmöglichkeiten sind deaktivieren oder entfernen. – charlietfl

+0

@Barmar Ja, ich kann deaktivieren oder ausblenden – Andrea

Antwort

0

IE nicht die hide() Funktion von jquery unterstützen, aber Sie können Sie die Elemente verstecken

Hoffnung mit diesen Ihnen helfen.

$(document).ready(function() { 
 
    for (var i = 0; i < ID_DropDown.options.length; i++) { 
 
     $("#ID_DropDown option[value=" + ID_DropDown.options[i].value + "]").css({"visibility":"hidden"}); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<select id="ID_DropDown" multiple="multiple" name="DropDown"> 
 
<option value="1">value1</option> 
 
<option value="2">value2</option> 
 
<option value="3">value3</option> 
 
</select>

Plunker: http://plnkr.co/edit/OpZrpgAYaqfyGdcBeakc?p=preview

+0

Diese Methode wird leere Leerzeichen anstelle der ausgeblendeten Optionen lassen. Wenn Sie nur einige Optionen in der Liste ausblenden, sieht es ziemlich hässlich aus. Zum Beispiel: http://plnkr.co/edit/7tWNr02Uclr2WyWWEMju – Mir