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 :

JSON et structure javascript dynamique


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2013
    Messages : 88
    Par défaut JSON et structure javascript dynamique
    Bonjour à tous,

    Je me retrouve avec un JSON de la forme suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {"data":[{"content":"event1","start":"new Date(2014,07,10)"},{"content":"event2","start":"new Date(2014,07,17)"}],"success":true}
    Que j'ai créer afin de m'adapter à la structure javascript suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    data = [
              {
                 'start': new Date(2010,7,23),
                 'content': 'Event'
              },
              {
                 'start': new Date(2010,7,23),
                 'content': 'Event'
              },
    ];
    Comment puis-je faire afin de rendre la structure javascript "dynamique" afin de pouvoir y ajouter tout les éléments de mon JSON, en prenant en compte le fait que je ne connait pas à l'avance le nombre d'éléments que celui-ci contiendra ?

    Merci à ceux qui prendront le temps de me lire

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    data n'est pas un json, mais un array => push()
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2013
    Messages : 88
    Par défaut
    J'ai pensé à quelque chose comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    for(var i = 0 ; i < json.data.length ; i++)
    {
        var item = data[i]; 
                    ...
    }
    Mais je ne vois pas comment intégrer ça dans le code ?

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2013
    Messages : 88
    Par défaut
    Ok, je commence à y voir un peu plus clair.

    J'ai une erreur que je ne comprend tout de même pas : Uncaught TypeError: Cannot read property 'data' of undefined
    A la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for(var i = 0 ; i < json.data.length ; i++){
    je charge pourtant le Json de la façon suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    var xhr = new XMLHttpRequest(); 
    xhr.open("GET", "/Test", true); // Appel à un servlet java
    xhr.send();  
     
    var json;
     
    xhr.onreadystatechange = function(){
       if(xhr.readyState == 4 && xhr.status == 200){
            json = JSON.parse(xhr.responseText);
       }
    }
    Et l'affiche comme cela :
    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
     
    data = [
      {
           'start': new Date(2010,7,23),
           'content': 'Buy a Polo'
       },
       {
           'start': new Date(2010,7,23,23,0,0),
           'content': 'Sell some books'
        },
    ];
     
        for(var i = 0 ; i < json.data.length ; i++){
            data.push({
               'start':data[i].start, 
                'content':data[i].content
             })
        }
    D'ou proviens mon erreur d'incompréhension ?

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    c'est quoi json.data ???
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

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

Discussions similaires

  1. créer des variables javascript dynamiquement dans un code php
    Par lau_the_raptor dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 14/07/2007, 12h10
  2. Rendre du javascript "dynamique" avec du Java
    Par raul_le_vieux dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 14/06/2007, 18h00
  3. variable javascript dynamique
    Par meteteou dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 15/01/2007, 09h33
  4. [PHP-JS] Ecrire dans un javascript dynamiquement 'echo'
    Par nono3000 dans le forum Langage
    Réponses: 6
    Dernier message: 23/12/2005, 15h17
  5. TAD matrice (structure + tableau dynamique)
    Par supermanu dans le forum C
    Réponses: 10
    Dernier message: 13/11/2004, 20h04

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