Necesita un poco de experiencia. El código HTML que se envía a través del cable lo analiza el navegador en un árbol DOM. En el punto, el marcado original se ha ido, se ha cumplido su propósito y ya no existe. Cuando se hace innerHTML
en un elemento, ese no es el HTML literal que generó el elemento, sino la serialización del navegador de ese subárbol DOM.
El punto es que no hay diferencia entre <div />
y <div></div>
. Así que solo mira si tiene hijos. Si no lo hace, el elemento tiene tiene una posible representación XHTML que utiliza una etiqueta de cierre automático.
element.children().length == 0
o como Cletus dice:
element.is(":empty")
¿Por qué necesita para averiguar esto? – cletus
@cletus: proviene de la pregunta previa de OP: http://stackoverflow.com/questions/2291434/jquery-check-if-prepend-failed – Sampson