Foros del Web » Programando para Internet » Javascript »

getElementsByTagName condicional

Estas en el tema de getElementsByTagName condicional en el foro de Javascript en Foros del Web. Hola, Estoy tratando de obtener información de un XML con getElementsByTagName(name) sin embargo el "name" se repite varias veces en el documento y quiero que ...
  #1 (permalink)  
Antiguo 14/12/2007, 13:53
 
Fecha de Ingreso: diciembre-2007
Mensajes: 3
Antigüedad: 16 años, 4 meses
Puntos: 0
getElementsByTagName condicional

Hola,

Estoy tratando de obtener información de un XML con getElementsByTagName(name) sin embargo el "name" se repite varias veces en el documento y quiero que me escriba solamente algunos dependiendo de el nodo padre, ejemplo:

<Vendedor>
<nombre>1</nombre>
</Vendedor>
<Comprador>
<nombre>2</nombre>
</Comprador>

y asi repetidamente....
Quiero que se me despliegue todos los valores <nombre> pero solamente las que pertenezcan a el nodo de Comprador.

Actualmente estoy usando lo siguiente:


var xml_doc = new ActiveXObject("Microsoft.XMLDOM");
xml_doc.async = false;
xml_doc.load("test.xml");

var i, n_elems, elems = xml_doc.getElementsByTagName("nombre");
n_elems = elems.length;
for (i = 4; i < n_elems; i++)
document.write(elems[i].firstChild.nodeValue + "<br>");

pero esto me devuelve todos los valores sin ninguna discriminacion, me pueden ayudar por favor?

Muchas gracias!

Paulo.
  #2 (permalink)  
Antiguo 14/12/2007, 14:01
Avatar de agressor  
Fecha de Ingreso: noviembre-2007
Ubicación: Knocking the Death Door..
Mensajes: 368
Antigüedad: 16 años, 5 meses
Puntos: 3
Re: getElementsByTagName condicional

prova con document.getElementById("ID") pueden tner el mismo name pero no el mismo ID Proba y luego me cuentas..
  #3 (permalink)  
Antiguo 14/12/2007, 14:34
 
Fecha de Ingreso: diciembre-2007
Mensajes: 3
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: getElementsByTagName condicional

Muchas gracias pero no funcionó
  #4 (permalink)  
Antiguo 14/12/2007, 15:43
 
Fecha de Ingreso: diciembre-2007
Mensajes: 3
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: getElementsByTagName condicional

Otro detalle que puede ayudar es que la longitud de los tags que deseo mostrar es de 16 caracteres mientras que el resto la de los demás es mucho menor.
  #5 (permalink)  
Antiguo 15/12/2007, 01:57
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: getElementsByTagName condicional

Hola:

Deberías discriminar los que no tengan como parentNode.tagName el valor "Comprador"...

for (i = 4; i < n_elems; i++)
if (elems[i].parentNode.tagName == "Cobrador")

document.write(elems[i].firstChild.nodeValue + "<br>");

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
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 03:46.