Foros del Web » Programando para Internet » Javascript »

Variable Global después del $.getJSON

Estas en el tema de Variable Global después del $.getJSON en el foro de Javascript en Foros del Web. Hola amigos. Tengo un problema casi resuelto. Más sin embargo, recurro a ustedes. Se que es sencillo de resolver. Agradezco su ayuda. Una script en ...
  #1 (permalink)  
Antiguo 20/05/2016, 02:09
Avatar de ghidalgoram  
Fecha de Ingreso: marzo-2008
Ubicación: Costa Rica
Mensajes: 446
Antigüedad: 16 años, 1 mes
Puntos: 7
Pregunta Variable Global después del $.getJSON

Hola amigos.

Tengo un problema casi resuelto. Más sin embargo, recurro a ustedes.
Se que es sencillo de resolver. Agradezco su ayuda.

Una script en PHP(usando print json_encode($myArray, JSON_FORCE_OBJECT); ) retorna lo siguiente:

Código Javascript:
Ver original
  1. {"0":{"frase":"FE","pregunta":"La certesa de lo que se espera.","coordenadas":"2.1-2.2","orientacion":"V"},"1":{"frase":"PAZ","pregunta":"Acuerdo entre pueblo","coordenadas":"3.2-4.2-5.2","orientacion":"H"}}


Necesito guardar estos datos de forma GLOBAL y así, leerlos o accesar de cualquier parte del archivo Javacript. Esto es no he podido resolverlo.

Es importante que cuando la página se cargue, estos valores sean creados y cargados en variables u objetos globales.


Esto si funciona:
Código Javascript:
Ver original
  1. var objCrucigrama = '{"0":{"frase":"FE","pregunta":"En realidad la certesa de lo que se espera.","coordenadas":"2.1-2.2","orientacion":"V"},"1":{"frase":"PAZ","pregunta":"Acuerdo entre pueblo","coordenadas":"3.2-4.2-5.2","orientacion":"H"}}';
  2.  
  3. obj = JSON.parse(objCrucigrama);
  4. alert(obj["0"].frase);


Esto NO funciona.
En el archivo Javascript, utilizo lo siguiente:


Código Javascript:
Ver original
  1. var obj = {};
  2.  
  3. var url="clsTest.php";
  4. var objCrucigrama = $.getJSON(url, function(data, status) {
  5.  
  6.     return data;
  7.  
  8. });
  9.  
  10. obj = JSON.parse(objCrucigrama);
  11. console.log(obj["0"].frase);


Esto da error.
"SyntaxError: JSON.parse: unexpected character at line 1 column 2 of the JSON data"

A veces indica "obj undefined", después del primer error.

O alguna otra forma de leer el JSON, convertirlo a objeto y que sea accesble (scope) a todo el archivo Javascript.

Muchas gracias
__________________
Loading...
  #2 (permalink)  
Antiguo 20/05/2016, 10:05
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Variable Global después del $.getJSON

Como el método $.getJSON() realiza una petición asíncrona, podrías empezar por trabajar con el objeto dentro de la llamada de retorno, es decir, en donde tienes el return.

__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: json
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:43.