Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Error en Google Chrome al hacer appendChild de un elemento enviado en XML con Ajax

Estas en el tema de Error en Google Chrome al hacer appendChild de un elemento enviado en XML con Ajax en el foro de Frameworks JS en Foros del Web. Bueno, la cosa es que tengo un formulario de comentarios que al enviar el comentario lo recibe el nuevo comentario enviado en formato HTML para ...
  #1 (permalink)  
Antiguo 05/12/2009, 22:48
 
Fecha de Ingreso: mayo-2008
Ubicación: En la guarida del mal, tratando de conquistar el mundo
Mensajes: 174
Antigüedad: 16 años, 6 meses
Puntos: 2
Pregunta Error en Google Chrome al hacer appendChild de un elemento enviado en XML con Ajax

Bueno, la cosa es que tengo un formulario de comentarios que al enviar el comentario lo recibe el nuevo comentario enviado en formato HTML para enviarlo a una div donde están todos los otros comentarios...

Hasta ahí todo bien, en Firefox funciona (En IE todavía no probé xD), pero en Google Chrome no, me tira el siguiente error:

Uncaught Error: WRONG_DOCUMENT_ERR: DOM Exception 4

Aca está el source:

Código PHP:
var comment page.responseXML.documentElement.getElementsByTagName("comment")[0].childNodes[0];

document.getElementById("comment-main").appendChild(comment); 
En realidad está simplificado, porque también dentro del XML recibo otros tags con mensajes, errores, etc, y también le pongo efectos de opacidad y movimiento xDD.

Bueno, a alguien se le ocurre porque será que me da ese error?
Hay alguna mejor forma de hacerlo? :S
  #2 (permalink)  
Antiguo 05/12/2009, 23:15
 
Fecha de Ingreso: mayo-2008
Ubicación: En la guarida del mal, tratando de conquistar el mundo
Mensajes: 174
Antigüedad: 16 años, 6 meses
Puntos: 2
Respuesta: Error en Google Chrome al hacer appendChild de un elemento enviado en XML

Ok, descubrí una forma para que no de error, pero ahora ni siquiera funciona en Firefox xDD.

Código PHP:
var comment page.responseXML.documentElement.getElementsByTagName("comment")[0].childNodes[0];

document.getElementById("comment-main").appendChild(importNode(commenttrue)); 
  #3 (permalink)  
Antiguo 05/12/2009, 23:48
 
Fecha de Ingreso: mayo-2008
Ubicación: En la guarida del mal, tratando de conquistar el mundo
Mensajes: 174
Antigüedad: 16 años, 6 meses
Puntos: 2
Respuesta: Error en Google Chrome al hacer appendChild de un elemento enviado en XML

Listo, ya lo solucioné, se hace así:

Código PHP:
var comment page.responseXML.documentElement.getElementsByTagName("comment")[0].childNodes[0];

document.getElementById("comment-main").appendChild(comment.cloneNode(true)); 
Ya que en realidad es "ilegal" usar appendChild en elementos de otros documentos, por lo que al usar cloneNode se puede ^^.

Ahora. No me explico porque Google Chrome no rederiza el HTML, es decir, como si no importara que le hubiese puesto el namespace :S
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:01.