IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Définir un Objet json


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 25
    Points : 17
    Points
    17
    Par défaut Définir un Objet json
    Salut à tous,
    Après avoir un peu galérer, je viens chercher une idée pour donner à un objet json le résultat d'une requete ajax. Je récupère un fichier json : '5.json'.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    {	
    	"Département" : 			     ["Ville"],
    	"(68) Haut-Rhin" :                           ["1","2","3"],
    	"(67) Bas-Rhin" :                            ["4","5","6"]
    	}
    Avec la formule javascript:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    var list_choix2;
    function loadJSON(fname) 
    {
    	var xhr=createXHR();
    	xhr.open("GET", fname,true);
    	xhr.onreadystatechange=function() 
    	{
    		if (xhr.readyState == 4) 
    		{
    			if (xhr.status != 404) 
    			{
     
    				var list_choix2=eval("(" + xhr.responseText + ")");
    		} 
    			else 
    			{
     
    			}
    		}
    	}
    	xhr.send(null);
    }
    Ainsi que:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     loadJSON('5.json');
    Mais à chaque fois, il me dit que list_choix2 a la valeur null ou n'est pas un objet. Pourtant j'ai éssayé de mettre list_choix2 hors de la fonction loadJSON, sans succès.
    Après avoir mis les pages sur mon site, la page marche nickel. C'est pour le transformé que je galère...Il y a surement un truc que je ne capte pas.
    A+ Stéphane

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Salut,
    Tu déclares 2 fois la variable list_choix2, l'une globale et l'autre celle de la fonction loadJson.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (xhr.status == 200 && xhr.readyState == 4) 
    			{
     
    				list_choix2=eval("(" + xhr.responseText + ")");
    		}

  3. #3
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 25
    Points : 17
    Points
    17
    Par défaut
    Merci andry, je suis vraiment une bille, j'ai modifié et ça marche.
    Merci bien.
    A+ Stéphane

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. retourner objet Json via ajax ? hmm
    Par Myfred dans le forum Général JavaScript
    Réponses: 18
    Dernier message: 25/06/2008, 11h06
  2. [POO] Restaurer un objet JSon en javascript
    Par GandalfZeGrey dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 21/01/2008, 15h14
  3. Définir un objet navigator
    Par pmithrandir dans le forum Général JavaScript
    Réponses: 16
    Dernier message: 16/01/2008, 11h51
  4. [POO] lecture objet json
    Par taouja dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/12/2007, 11h32
  5. Réponses: 5
    Dernier message: 14/02/2007, 15h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo