Ver Mensaje Individual
  #4 (permalink)  
Antiguo 07/06/2007, 16:35
Avatar de derkenuke
derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 21 años, 2 meses
Puntos: 45
Re: por que truena si no tiene valor?

Resulta que "valor3" no tiene hijos. Cuando haces
Código:
vari.getElementsByTagName("valor1")[0].firstChild.data;
te devuelve la cadena "Si" porque "valor1" tiene un hijo, un nodo de texto. Entonces los nodos de texto tienen la propiedad data, que es el texto que contienen.

Al no haber nodo hijo (ni siquiera de texto al no contener ni un espacio), no contiene propiedad data (ni siquiera sé que ocurre si sólo haces firstChild, dará undefined?).

Bueno el caso es que hay métodos DOM como hasChildNodes() o childNodes.length para averiguar si hay o no hijos. Deberás mirarlo antes. Lo que quieras devolver en ese caso ya es cosa tuya (false, cadena vacía, null...).


Un saludo.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.