Problema XPath

kraneok

Hola gente, resulta que estoy creándome un código para ejecutar consultas XPath a una base de datos XML utilizando XMLHttpRequest.
El problema está en que no me muestra nada, he probado variando el código varias veces, pero no muestra el resultado.
A ver si me podéis arrojar algo de luz.

<!DOCTYPE html>
<html>
	<head>
		<title>Pruebas XPath</title>
		<meta charset="utf-8" />
		<script language="javascript">
			function iniciar()
			{
				console.log( "Iniciado.." );
				var boton = document.getElementById( 'ejecutar' ).onclick = ejecutar;
			}
			
		function ejecutar()
		{
			var sentencia;
			prompt( "Introduce la sentencia", sentencia );
			
			var objetoXMLHttp = iniciarObjetoXMLHttpRequest();

			if( window.ActiveXObject )
			{
				var nodos = objetoXMLHttp.selectNodes( sentencia );
				
				for ( i	= 0; i < nodos.length; i++ )
				{
					document.write( nodos[i].childNodes[0].nodeValue );
					document.write( "<br />" );
				}
			}
			else if( document.implementation && document.implementation.createDocument )
			{
				var nodos 	  = objetoXMLHttp.evaluate( sentencia, document, null, XPathResult.ANY_TYPE, null);
				var resultado = nodos.iterateNext();
 
				while ( resultado )
				{
					document.getElementById( 'p.resultado' ).innerHTML = resultado.childNodes[0].nodeValue;
					document.getElementById( 'p.resultado' ).innerHTML = "<br />";
					
					resultado = nodos.iterateNext();
				}
			}
		}
		
		function iniciarObjetoXMLHttpRequest()
		{
			var xmlHttp = null;
			
			//Para los navegadores "normales"
			if( window.XMLHttpRequest )
			{
				try
				{
					xmlHttp = new XMLHttpRequest();
					console.log( "Objeto XMLHttpRequest creado." );
				}catch( e )
				{
					console.log( e.message );
				}
			}
			else 
			{
			//Para Internet Explorer...
				try
				{
					xmlHttp = new ActiveXObject( "Microsoft.XMLDOM" );
					console.log( "Objeto ActiveXObject creado." );
				}catch( e )
				{
					console.log( e.message );
				}
			}
			
			xmlHttp.open( "GET", "libros.xml" ,false);
			xmlHttp.send( "" );
			
			return xmlHttp.responseXML;
		}
	</script>
</head>
<body lang="es" onload=iniciar();>
	<p>Pulsa sobre el botón para ejecutar una nueva consulta en XML. <button id="ejecutar" >Ejecutar</button></p>
	<p id="resultado" ></p>
</body>
</html>
kraneok

Ya he arreglado el código, tenía algunos errores de síntaxis, es lo que tiene utilizar jquery XDD.

Usuarios habituales

  • kraneok