javascript - jQuery: html() devuelve cadena vacía
Si uso Firebug y escribo $ ("<p>").html() en la ventana de observación, obtengo una cadena vacía. Mi suposición es que es porque $ ("<p>") no se ha renderizado aún en el documento. ¿Cómo puedo obtener el marcado de $ ("<p>") antes de que se agregue al DOM?
Respuesta #1
Estás pidiendo el HTML externo, no el interno; el HTML dentro del <p> está efectivamente vacío.
Para obtener el HTML tendrías que envolverlo en otro elemento, así:
jQuery("<div>").append($("<p>").clone()).html()
Esto te daría:
<p></p>
Respuesta #2
Prueba $ ( 'p' ).html() en lugar de $ ( '<p>' ).html()
Ejemplo en http://jsfiddle.net/tdg7U/
Test1 alerta $ ( '<p>' ).html()
Test2 alerta $ ( 'p' ).html()
