2012-08-15 18 views
8

Siehe dieses select Element mit display:none. In jQuery Mobile ist es trotzdem angezeigt:jQuery Mobile Anzeigen ausgeblendet Element auswählen

<select id="dddd" name="dddd" 
     data-mini="true" data-native-menu="false" data-theme="c" 
     onChange="" 
     style="display:none">  
    <option value="1">An optinos</option> 
</select> 

Ich versuche daher jQuery Mobile select Elemente abhängig von anderen Benutzeraktionen ein-/auszublenden, warum ich die oben mache.

Irgendwelche Ideen?

+0

versuchen, ID zu geben, bedeutet #dddd {display: none;} –

Antwort

12

Wenn Ihre Seite geladen wird, verbessert jQuery Mobile Ihre Seite, damit sie das mobile Aussehen und Gefühl erhält. Unglücklicherweise gibt es derzeit ein Problem mit jQuery mobile, das es nicht erlaubt, benutzerdefinierte Klassen (und sogar benutzerdefinierte Stile nach dem style-Attribut) an erweiterte Elemente anzuhängen. Überprüfen Sie https://github.com/jquery/jquery-mobile/issues/3577 für das Problem. Um dieses Problem zu beheben, können Sie das Problem umgehen, indem Sie es in ein div-Element einfügen und stattdessen die Anzeige des div-Wrappers steuern.

<div id="dddd-wrapper" class="ui-screen-hidden"> 
    <select data-mini="true" data-native-menu="false" id="dddd" name="dddd" data-theme="c"  onChange="" style="display:none">  
    <option value="1">An optinos</option> 
    </select> 
</div> 

ui-screen-hidden ist eine jquery mobile definierten Stil Regel (in jquery.mobile..css) für ein Element zu verstecken.

Verwandte Themen