
extraer valor de nodos xml
Publicado por joaquin (2 intervenciones) el 12/12/2014 17:46:43
Hola amigos.
Necesito ayuda mi problema es que no puedo extraer los nodos xml de responseXML.
Primero envío los datos desde el servidor con:
y luego en la página con javascript:
y me dice Uncaught TypeError: Cannot read property 'getElementsByTagName' of undefined
Necesito ayuda mi problema es que no puedo extraer los nodos xml de responseXML.
Primero envío los datos desde el servidor con:
1
2
3
4
5
6
7
8
9
10
11
$zonas = DB::table('zonas')->distinct()->get();
$xmlstr = "<?xml version='1.0' ?><zonas></zonas>";
$xml = new SimpleXMLElement($xmlstr);
foreach ($zonas as $value)
{
$xml->addChild('nombre', $value->nombre);
$xml->addChild('id', $value->id);
}
header('Content-type: text/xml');
return $xml->asXML;
y luego en la página con javascript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
function añadir_zona(){
var indice;
i = i + 1;
name = "zona" + i;
if (window.XMLHttpRequest) {
XMLHttpRequestObject = new XMLHttpRequest();
} else if (window.ActiveXObject) {
XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
}
XMLHttpRequestObject.open('POST', 'proveedores/obtenerZonas',true);
XMLHttpRequestObject.send(null);
XMLHttpRequestObject.onreadystatechange = function()
{
var lista = document.createElement('select');
lista.name = name;
var nombre;
if(XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200){
var xmlDocument = XMLHttpRequestObject.responseXML;
parser = new DOMParser();
xmlDocument = parser.parseFromString(xmlDocument,"text/xml");
var opciones = xmlDocument.getElementsByTagName("zonas");
for(indice = 0; indice <= opciones.length; indice++)
{
alert(opciones[indice].getElementsByTagName("nombre")[0].item(0).firstChild.data);
}
}
}
}
y me dice Uncaught TypeError: Cannot read property 'getElementsByTagName' of undefined
Valora esta pregunta


0