2010-10-09 26 views
13

tengo un div que podría tener potencialmente un hipervínculo con un id de respuesta. ¿Cómo puedo verificar si existe ese a[id=reply]? Pensé que podría ser algo así, pero alerta el mensaje incluso si ese hipervínculo no existe.¿Cómo comprobar si existe niño

if($('div[chunk_id='+reply_chunk_id+']').children('a[id=reply]')){    
    alert('test'); 
} 

Respuesta

27

Comprobar la .length del selector para ver cuántos elementos se corresponde, en este caso:

if($("#reply").length) { 
    //child exists 
} 

Sin embargo, sonidos como que tiene múltiples elementos con id="reply", que no es válido. En su lugar utilizar class="reply" y el selector se vería así:

if($("div[chunk_id='"+reply_chunk_id+"'] > a.reply").length){ 
    //child exists 
} 
+0

+1, ganado por 26 segundos: o Editado por faltar a la cita. – Matchu

+0

@Scarface: en su lugar, debe usar una clase ... una ID solo debe aparecer una vez por página. –

+0

muchas gracias Nick como de costumbre, lo aprecian – Scarface

4

Otra manera de hacerlo:

if($("div[chunk_id="+reply_chunk_id+"]").children('.reply').length > 0){ 
    // it exists 
} 
+0

Aquí buscamos ** ** cualquier niño de clase '.reply', al igual que el PO se le preguntó, no sólo de primer nivel a los niños como en la respuesta seleccionada. –

Cuestiones relacionadas