JavaScript - Leer fichero XML con Javascript

 
Vista:

Leer fichero XML con Javascript

Publicado por c885 (2 intervenciones) el 25/05/2012 14:04:08
Hola a todos.

Veréis, estoy intentando leer un fichero XML desde HTML con Javascript y me surgen problemas a la hora de cargar el fichero.
Tengo un fichero XML que contiene personas almacenando de estas sus nombres y apellidos. La intención es con una función en Javascript que recibe un nombre y un apellido, recorrer cada una de las personas almacenadas en dicho fichero y que me muestre (en este momento con un simple alert me sirve) si la persona se encuentra ya almacenada o no.

Nunca antes había tocado XML y con Javascript había hecho muy, muy poco, asique si pudieseis echarme una manita me sería de gran ayuda ya que me urge mucho terminar esto.

Os dejo el código XML:
1
2
3
4
5
<?xml version="1.0" encoding="iso-8859-1"?>
<personas>
		<Item id="1" nombre="Andrea" apellido="Martinez" > </Item>
		<Item id="2" nombre="Juan" apellido="Fernandez" > </Item>
</personas>


Y la función de Javascript a la que he llegado hasta el momento la cual lleva incluidos unos alerts para saber por donde se queda atascada.
Consigue llegar hasta el alert 0,4, por lo tanto no me hace el xmlDoc.send(), ¿alguien sabría explicarme el porque de esto?
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
34
35
36
37
38
39
40
41
function ComprobarPersonaAlmacenada(nombre, apellido) {
	alert('0');
 
	//----------------
	if (window.XMLHttpRequest){ // code for IE7+, Firefox, Chrome, Opera, Safari
	  var xmlDoc = new XMLHttpRequest();
	  alert('0,1');
	}else{// code for IE6, IE5
	  var xmlDoc =  ActiveXObject("Microsoft.XMLHTTP");
	  alert('0,2');
	}
 
	alert('0,3');
	xmlDoc.open("GET",'UserPass.xml',true);
	alert('0,4');
	xmlDoc.send(null);
	alert('0,5');
 
	var xmlText = xmlRequest.responseText;
	var xmlResult = xmlRequest.responseXML;
	var xmlList = xmlResult.getElementsByTagName('personas');
	alert('1');
 
 
	var count = xmlList.length;
	var itm = null;
	alert('2');
 
	var i = 0;
	for (i=0;i<count;i++)
	{
		itm = xmlList.itm(i);
		if (itm.getAttribute('nombre') == nombre&& itm.getAttribute('apellido') == apellido)
		{
			alert('La persona está almacenada');
			alert('3');
		}
		alert('4');
		alert('La persona no está almacenada');
	}
};
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Leer fichero XML con Javascript

Publicado por C885 (2 intervenciones) el 25/05/2012 14:16:31
Fallo técnico...

El código de Javascript que debía haber puesto arriba es este:

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
34
35
36
37
38
39
40
41
function ComprobarPersonaAlmacenada(nombre, apellido) {
	alert('0');
 
	//----------------
	if (window.XMLHttpRequest){ // code for IE7+, Firefox, Chrome, Opera, Safari
	  var xmlDoc = new XMLHttpRequest();
	  alert('0,1');
	}else{// code for IE6, IE5
	  var xmlDoc =  ActiveXObject("Microsoft.XMLHTTP");
	  alert('0,2');
	}
 
	alert('0,3');
	xmlDoc.open("GET",'UserPass.xml',true);
	alert('0,4');
	xmlDoc.send(null);
	alert('0,5');
 
	var xmlText = xmlDoc.responseText;
	var xmlResult = xmlDoc.responseXML;
	var xmlList = xmlResult.getElementsByTagName('personas');
	alert('1');
 
 
	var count = xmlList.length;
	var itm = null;
	alert('2');
 
	var i = 0;
	for (i=0;i<count;i++)
	{
		itm = xmlList.itm(i);
		if (itm.getAttribute('nombre') == nombre&& itm.getAttribute('apellido') == apellido)
		{
			alert('La persona está almacenada');
			alert('3');
		}
		alert('4');
		alert('La persona no está almacenada');
	}
};


Siento las molestias, y de nuevo, muchas gracias por lo que podáis aportarme :).
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar