2012-08-15 11 views
8

Vedere questo elemento select con display:none. In jQuery Mobile viene visualizzato nonostante questo:jQuery Mobile visualizza l'elemento di selezione nascosto

<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> 

Sto cercando di mostrare/nascondere jQuery Mobile select elementi dipendono da altre azioni degli utenti, quindi, il motivo per cui sto facendo quanto sopra.

Qualche idea?

+0

provare a dare in id significa #dddd {display: none;} –

risposta

12

Quando la pagina viene caricata, jQuery Mobile migliora la pagina per renderla mobile. Sfortunatamente, esiste un problema con jQuery mobile che non può associare le classi personalizzate (e persino gli stili personalizzati, dall'attributo style) agli elementi avanzati. Si prega di controllare https://github.com/jquery/jquery-mobile/issues/3577 per il problema. Per ovviare a questo problema, mentre questo problema non è ancora stato risolto, puoi effettivamente inserirlo all'interno di un elemento div e controllare invece la visualizzazione del wrapper div.

<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 è una regola di stile definito jQuery Mobile (in jquery.mobile..css) per nascondere un elemento.