Un uso común de JSON es para leer datos desde un servidor web, y mostrar los datos en una página web.
Este capítulo le enseñará, en 4 sencillos pasos, cómo leer datos JSON, utilizando XMLHttp.
Ejemplo de JSON
Este ejemplo lee un menú de myTutorials.txt , y muestra el menú en una página web:
Ejemplo de JSON
<div id="id01"></div>
<script>
var xmlhttp = new XMLHttpRequest();
var url = "myTutorials.txt";
xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState == 4 && xmlhttp.status ==
200) {
var myArr = JSON.parse(xmlhttp.responseText);
myFunction(myArr);
}
};
xmlhttp.open("GET", url, true);
xmlhttp.send();
function myFunction(arr) {
var
out = "";
var i;
for(i = 0; i <
arr.length; i++) {
out += '<a
href="' + arr[i].url + '">' +
arr[i].display + '</a><br>';
}
document.getElementById("id01").innerHTML = out;
}
</script>
Inténtalo tú mismo " ejemplo Explicación
1: Crear una matriz de objetos.
Utilizar un literal de matriz para declarar una array de objects .
Dé a cada objeto dos propiedades: display y la url .
Nombrar la matriz myArray :
myArray
var myArray = [
{
"display": "JavaScript Tutorial",
"url": "http://www.w3ii.com/js/default.html"
},
{
"display": "HTML Tutorial",
"url": "http://www.w3ii.com/html/default.html"
},
{
"display": "CSS Tutorial",
"url": "http://www.w3ii.com/css/default.html"
}
]
2: Crear una función de JavaScript para mostrar la matriz.
Crear una función myFunction() que recorre los objetos de matriz, y mostrar el contenido como enlaces HTML:
myFunction()
function myFunction(arr) {
var out = "";
var i;
for(i = 0; i < arr.length; i++) {
out += '<a href="' + arr[i].url + '">' + arr[i].display + '</a><br>';
}
document.getElementById("id01").innerHTML = out;
}
Llame myFunction() con myArray como argumento:
3: Crear un archivo de texto
Poner el literal de matriz en un archivo llamado myTutorials.txt :
myTutorials.txt
[
{
"display": "JavaScript Tutorial",
"url": "http://www.w3ii.com/js/default.html"
},
{
"display": "HTML Tutorial",
"url": "http://www.w3ii.com/html/default.html"
},
{
"display": "CSS Tutorial",
"url": "http://www.w3ii.com/css/default.html"
}
]
Mira el archivo » 4: Leer el archivo de texto con un XMLHttpRequest
Escribir un XMLHttpRequest para leer el archivo de texto y utilizar myFunction() para mostrar la matriz:
XMLHttpRequest
var xmlhttp = new XMLHttpRequest();
var url = "myTutorials.txt";
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 &&
xmlhttp.status == 200) {
var myArr = JSON.parse(xmlhttp.responseText);
myFunction(myArr);
}
};
xmlhttp.open("GET",
url, true);
xmlhttp.send();
Inténtalo tú mismo "