2011-01-31 13 views

risposta

7
var hasOptions = !!$('#theSelect option').filter(function() { return !this.disabled; }).length; 

forse? Questo cerca gli elementi <option> che non sono disabilitati.

+1

Questo è rad @Pointy! – jessegavin

+0

Sì, è una bella cosa da fare. – Pointy

3
$('#input1 option').length > 0 

Dove #input è l'ID dell'elemento select si esegue questo test contro.

7
if ($("#myselect option").length > 0) { 
    // Yay we have options 
} 
+0

'length' è una proprietà. Non c'è bisogno di '(' e ')'. –

+0

Roger quello. Fisso. Grazie @Makram – jessegavin

+0

cosa succede se la lunghezza è 1? –

8
var menu = getElementById("select_id"); 
if(menu.options.length) { 
    // has children 
} else { 
    // empty 
} 
+0

Supponendo che tu voglia qualcosa che funzioni senza ** jQurey **. –

0

JavaScript nativo soluzione:

!!document.getElementById('jiveviewthreadsform-filter').children.length 

(prega di non uso eccessivo jQuery, grazie)

+0

jive forum ha questo? – Blankman

+1

Non funziona se c'è un '' vuoto in :-) – Pointy

+0

@Pointy Vero ma l'OP non ha mai detto nulla su ''. +1 alla soluzione in ogni caso, è il migliore (anche se un po 'prolisso) –

0

Molto hackily, è possibile resta che verificare la selectedIndex; dal momento che la maggior parte dei browser garantisce che ci sia qualcosa selezionato se possibile, sarà solo -1 se non ci sono opzioni selezionabili.

Problemi correlati