2017-05-23 3 views
1

Ich möchte die Option basierend auf einigen Bedingungen ein-/ausblenden. Es funktioniert gut in Firefox, funktioniert aber nicht im IE. Ich möchte nicht remove() verwenden, weil ich die Daten beibehalten möchte, um sie unter anderen Bedingungen wieder anzuzeigen.Option auswählen jquery hide() funktioniert nicht in IE

IE Version 10, jQuery v1.11.3

$('#ddl').children('option').each(function() { 
    if ($(this).attr('e-id') != 4) { 
     $(this).hide(); 
    } 
    else { 
     $(this).show(); 
    } 
}); 
+2

Erstellen Sie eine Geige und geben Sie Ihr Code-Snippet hier. Das Ausblenden von Optionen ist nicht Cross-Browser-kompatibel. – Manwal

+0

Geben Sie an: der problematische Code, die Version von jQuery, die Sie verwenden, und die Version von IE, die Sie verwenden. –

+0

Bitte alle relevanten Code, wie html –

Antwort

-1

können Sie prop verwenden zu ersetzen attr

+0

bitte begründen Sie Ihre Antwort mit Code oder Beispiele. –

+0

Während dies ein wertvoller Hinweis zur Lösung des Problems sein könnte, zeigt eine gute Antwort auch die Lösung. Bitte [bearbeiten], um Beispielcode anzugeben, um zu zeigen, was Sie meinen. Alternativ können Sie dies auch als Kommentar schreiben. –

0

IE nicht einige CSS-Eigenschaften auf Option-Tag unterstützen. Diejenigen, die ich kenne, sind

Display, Höhe, Sichtbarkeit, Zeiger-Ereignisse

option:first-child, &:nth-child(3){ 
 
    color: red; 
 
} 
 

 
option:nth-child(2){ 
 
    font-weight: bold; 
 
} 
 

 
option:nth-child(4){ 
 
    font-size: 30px; 
 
} 
 

 
option:nth-child(5){ 
 
    display:none; 
 
}
<select> 
 
    <option>A</option> 
 
    <option>B</option> 
 
    <option>C</option> 
 
    <option>D</option> 
 
    <option>E</option> 
 
    <option disabled>F</option> 
 
    <option>G</option> 
 
    <option>H</option> 
 
    <option>I</option> 
 
</select>

Aber man kann die Option deaktiviert, wenn Sie Benutzer nicht wollen, um es auszuwählen .

Verwandte Themen