Estate atento ya que en esta sección hallarás el hallazgo que buscas.
Solución:
Suponiendo que se refiere a “archivo en un sistema de archivos local” cuando dice archivo .json.
Deberá guardar los datos json formateados como jsonp y usar un file:// url
para acceder a ella.
Su HTML se verá así:
Y el archivo c:dataactivity.jsonp contiene la siguiente línea:
jsonstr = [ "date":"July 4th", "event":"Independence Day" ];
AVISO: A PARTIR DEL 12 DE JULIO DE 2018, TODAS LAS OTRAS RESPUESTAS ESTÁN DESACTUALIZADAS. JSONP AHORA SE CONSIDERA UNA IDEA TERRIBLE
Si tiene su JSON como un string, JSON.parse()
funcionará bien. Dado que está cargando el json desde un archivo, deberá realizar una solicitud XMLHttpRequest. Por ejemplo (Este es el ejemplo de w3schools.com):
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function()
if (this.readyState == 4 && this.status == 200)
var myObj = JSON.parse(this.responseText);
document.getElementById("demo").innerHTML = myObj.name;
;
xmlhttp.open("GET", "json_demo.txt", true);
xmlhttp.send();
Use the XMLHttpRequest to get the content of a file.
The content is written in JSON format, and can easily be converted into a JavaScript object.
Take a look at json_demo.txt
No funcionará aquí ya que ese archivo no se encuentra aquí. Vaya a este ejemplo de w3schools: https://www.w3schools.com/js/tryit.asp?filename=tryjson_ajax
Aquí está la documentación para JSON.parse(): https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse
He aquí un resumen:
El método JSON.parse() analiza un JSON stringconstruyendo el valor u objeto de JavaScript descrito por el string. Se puede proporcionar una función de reactivación opcional para realizar una transformación en el objeto resultante antes de que se devuelva.
Aquí está el ejemplo utilizado:
var json = '"result":true, "count":42';
obj = JSON.parse(json);
console.log(obj.count);
// expected output: 42
console.log(obj.result);
// expected output: true
Aquí hay un resumen de XMLHttpRequests de https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest:
Utilice objetos XMLHttpRequest (XHR) para interactuar con los servidores. Puede recuperar datos de una URL sin tener que actualizar la página completa. Esto permite que una página web actualice solo una parte de una página sin interrumpir lo que está haciendo el usuario. XMLHttpRequest se usa mucho en la programación Ajax.
Si no quiere usar XMLHttpRequests, entonces una forma de JQUERY (que no estoy seguro de por qué no funciona para usted) es http://api.jquery.com/jQuery.getJSON/
Como no funciona, intentaría usar XMLHttpRequests
También puede probar las solicitudes AJAX:
$.ajax(
'async': false,
'global': false,
'url': "/jsonfile.json",
'dataType': "json",
'success': function (data)
// do stuff with data
);
Documentación: http://api.jquery.com/jquery.ajax/
Puedes hacerlo como…
Simplemente proporcione la ruta correcta de su archivo json …
Simplemente obteniendo los datos y agregándolos a un div… Inicialmente imprimiendo la longitud en alerta.
Aquí está mi archivo Json: abc.json
data = '["name" : "Riyaz","name" : "Javed","name" : "Arun","name" : "Sunil","name" : "Rahul","name" : "Anita"]';