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:
Ahora en JavaScript lo que quiero es asignar el valor obtenido de XML a distintos campos de texto, este es mi codigo JavaScriptheader('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>";
Código:
Como ven es algo ineficiente...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;
Si conocen de alguna solucion para evitar esto se los agradeceria.
Gracias de antemano.
Saludos