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

Mejorar al sacar los datos de XML?

Estas en el tema de Mejorar al sacar los datos de XML? en el foro de Frameworks JS en Foros del Web. Hola a todos. He buscado una manera de obener los datos de un documento XML desde JavaScript, pero desde mi punto de vista es algo ...
  #1 (permalink)  
Antiguo 07/02/2007, 11:19
Avatar de navy  
Fecha de Ingreso: febrero-2006
Mensajes: 36
Antigüedad: 18 años, 2 meses
Puntos: 1
Mejorar al sacar los datos de XML?

Hola a todos.
He buscado una manera de obener los datos de un documento XML desde JavaScript, pero desde mi punto de vista es algo ineficiente. Quisiera hacerlo en algun ciclo para que este trabajo no sea tedioso
Parte del XML, que lo genero desde php es el siguiente:
Código:
header('Content-Type: text/xml');
echo "<?xml version=\"1.0\"?>";
....codigo php......
echo "<libro>";
echo "<titulo>$datos[1]</titulo>";
echo "<nombre>$datos[2]</nombre>";
echo "<apellido>$datos[3]</apellido>";
echo "<editora>$datos[4]</editora>";
echo "<anoP>$datos[5]</anoP>";
echo "<isbn>$datos[6]</isbn>";
echo "<codigoM>$datos[7]</codigoM>";
echo "</libro>";
Ahora en JavaScript lo que quiero es asignar el valor obtenido de XML a distintos campos de texto, este es mi codigo JavaScript
Código:
       var titulo = http.responseXML.getElementsByTagName("titulo")[0];
       var nombre = http.responseXML.getElementsByTagName("nombre")[0];
       var apellido = http.responseXML.getElementsByTagName("apellido")[0];
       var editora = http.responseXML.getElementsByTagName("editora")[0];
       var anoP = http.responseXML.getElementsByTagName("anoP")[0];
       var isbn = http.responseXML.getElementsByTagName("isbn")[0];
       var codigoM = http.responseXML.getElementsByTagName("codigoM")[0];
       
       document.getElementById('textfield0').value = titulo.childNodes[0].nodeValue;
       document.getElementById('textfield1').value = nombre.childNodes[0].nodeValue;
       document.getElementById('textfield2').value = apellido.childNodes[0].nodeValue;
       document.getElementById('textfield3').value = editora.childNodes[0].nodeValue;
       document.getElementById('textfield4').value = anoP.childNodes[0].nodeValue;
       document.getElementById('textfield5').value = isbn.childNodes[0].nodeValue;
       document.getElementById('textfield6').value = codigoM.childNodes[0].nodeValue;
Como ven es algo ineficiente...
Si conocen de alguna solucion para evitar esto se los agradeceria.
Gracias de antemano.
Saludos
  #2 (permalink)  
Antiguo 08/02/2007, 13:09
Avatar de navy  
Fecha de Ingreso: febrero-2006
Mensajes: 36
Antigüedad: 18 años, 2 meses
Puntos: 1
Re: Mejorar al sacar los datos de XML?

He leido un poco sobre el Modelo de Objeto de Documentos DOM y vi que existen algunas propiedades como IXMLDOMNodeList o IXMLDOMNode que me devuelven listas de nodos para despues poder acceder a ellos a traves de ChildNodes.
El problema esta en que no se como usarlo, si alguien tiene alguna idea...
Saludos.
  #3 (permalink)  
Antiguo 08/02/2007, 14:13
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Re: Mejorar al sacar los datos de XML?

Creo que este enlace puede ayudarte:
http://www.programacionweb.net/artic...iculo/?num=376
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 19:50.