Friday, April 5, 2019

Extraiga o recupere datos de un archivo XML con AJAX

El siguiente tutorial requiere conocimientos en AJAX, JavaScript, XML y DOM XML.

La siguiente información está disponible en un archivo XML :

Archivo libros.xml

esa información a través de AJAX y la mostraremos en el navegador en una tabla HTML .

En nuestro archivo index.php creamos un div y un botón para que cuando se presione, muestre dentro del div la información que contiene el archivo XML. En la cabecera importamos el archivo ajax.js que contiene la función JavaScript loadXMLDoc () .

Archivo index.php

] [1945008] de [1945] JavaScript y XML (AJAX)

Obtenga información de un archivo XML a través de AJAX.

El archivo ajax.js es el archivo de archivo , el método abierto () carga el archivo que vamos a procesar (books.xml), pero está con el método getElementsByTagName ( name ) that Obtenemos todos los elementos (datos) de una etiqueta específica. Por ejemplo, en la línea:

x = xmlDoc.getElementsByTagName ("libro");

Lo que hace es obtener todos los elementos de la etiqueta del libro y almacenarlos en la variable x como una lista de nodos. Una lista de nodos es una matriz de nodos, que se puede recorrer a través de posiciones (como una matriz) a partir de cero.

Con un ciclo for recorremos la matriz x:

para (i = 0; i longitud ; i ++)
{
txt = txt + "";
txt = txt + x [i] .getElementsByTagName ("title") [0] .childNodes [0] .nodeValue;
txt = txt + "";

txt = txt + "

";

txt = txt + "

";
}

Con la longitud de la propiedad calculamos automáticamente el tamaño de la matriz. En este caso 5 libros.

La función o tarea de la línea:

x [i] .getElementsByTagName ("title") [0] .childNodes [0] .nodeValue;

Es que para cada libro se obtiene el texto que contiene el elemento.

getElementsByTagName ("title") [0] - El primer elemento
childNodes [0] - El primer elemento secundario del elemento
nodeValue - El valor del nodo (el propio texto)

Lo anterior también se aplica para obtener el autor y el país de cada libro. La variable txt es mostrar la información en una tabla HTML.

Archivo ajax.js

función loadXMLDoc ()
{
var xmlhttp;
var txt, x, i;
if (window.XMLHttpRequest)
{// código para IE7 +, Firefox, Chrome, Opera, Safari
xmlhttp = nuevo XMLHttpRequest ();
}
otra cosa
{// código para IE6, IE5
xmlhttp = nuevo ActiveXObject ("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function ()
{
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
{
xmlDoc = xmlhttp.responseXML;
txt = "";
x = xmlDoc.getElementsByTagName ("libro");

txt = "

";

para (i = 0; i <x.length; i ++)
{
txt = txt + "

";

txt = txt + "

";

txt = txt + "

";
}

txt = txt + "

Título Autor País
";
txt = txt + x [i] .getElementsByTagName ("title") [0] .childNodes [0]] .nodeValue;
txt = txt + "
";
txt = txt + x [i] .getElementsByTagName ("autor") [0]. childNodes [0] .nodeValue;
txt = txt + "
";
txt = txt + x [i] .getElementsByTagName ("country") [0] .childNodes [0] .nodeValue;
txt = txt + "

";

document.getElementById ("info") .innerHTML = txt;
}
}
xmlhttp.open ("GET", "books.xml", true);
xmlhttp.send ();
}

] Demo / código fuente


READ MORE - CLICK HERE

www.Down.co.ve


";
txt = txt + x [i] .getElementsByTagName ("author") [0] .childNodes [0] .nodeValue;
txt = txt + "
";
txt = txt + x [i] .getElementsByTagName ("country") [0] .childNodes [0] .nodeValue;
txt = txt + "

No comments:

Post a Comment

Como crear tarjetas Virtuales Visa o MasterCard con tu divisa y las ventajas que ofrecen

Hoy día, gracias al creciente mundo del Internet se le ha permitido a cada persona poder acceder a muchos productos o servicios. Y en estos ...