Risposte:
$('#idThatDoesnotexist').length
è quello che stai cercando. (Se non trova nulla, lo farà === 0
.) Quindi la tua dichiarazione condizionale dovrebbe probabilmente essere:
if ($ ('# id'). length) {/ * code if found * /} else {/ * code if not found * /}
Stai ricevendo un oggetto restituito da quell'avviso perché jQuery (quasi) restituisce sempre "l'oggetto jQuery" quando lo usi, che è un wrapper per gli elementi trovati da jQuery che consente il concatenamento dei metodi.
== 0
, la vedrai ovunque.
if (!!$('#id').length)
, che fa un cast booleano.
Futuraprime ha ragione ma puoi abbreviare la sintassi procedendo come segue:
if ($("#id").length) {
//at least one element was found
} else {
//no elements found
}
$('#my_selector').length > 0
$('#my_selector').get(0) !== undefined
$('#my_selector')[0] !== undefined
Questa è la base, ora fai quello che vuoi.