2010-04-15 7 views
67

digo queprueba para vacío jQuery resultado de la selección

var s = $('#something'); 

y al lado Quiero probar si jQuery encontró #something, es decir, quiero probar si s está vacía.

pude usar mi fiel isempty() en él:

function isempty(o) { 
    for (var i in o) 
     return false; 
    return true; 
} 

O ya que los objetos jQuery son matrices, supongo que podría poner a prueba s.length.

Pero ninguno parece estar en el idioma de jQuery, no muy jQueryesque. ¿Que sugieres?

+0

posible duplicado de http://stackoverflow.com/questions/299802/how-do-you-check-if- a-selector-existe-en-jquery – inkedmn

+0

inkedmn, sí, pregunta similar, pero no vi la respuesta '.size()' allí, que prefiero. –

+0

posible duplicado de [¿Hay una función "existe" para jQuery?] (Http://stackoverflow.com/questions/31044/is-there-an-exists-function-for-jquery) – Bergi

Respuesta

78

Utilice la propiedad s.length.

if(s.length == 0) { 
    ... 
} 

[editar] size() en desuso en jquery 1,8 http://api.jquery.com/size/

+3

Yo diría '.size() 'es definitivamente el más jQueryesque de las opciones. Aunque me atrevo a decir que '.length' sería más rápido. Gracias. –

+1

+1 fsb y según el enlace proporcionado (Billiam), el uso de .length() es "preferido". – chris

+0

@george .length sin los corchetes – Liam

3
if($("#something").length > 0){ 
    // Element found 
} 
else{ 
    // No element found 
} 
Cuestiones relacionadas