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

jQuery Discussion :

Parser un tableau dans un fichier JSON


Sujet :

jQuery

  1. #1
    Débutant  
    Inscrit en
    Mai 2006
    Messages
    705
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 705
    Points : 117
    Points
    117
    Par défaut Parser un tableau dans un fichier JSON
    Bonjour à toutes et tous,

    je voulais parser un fichier JSON avec HTML, le fichier est le suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    {
    "menu":[
        {"id": "TN", "value": "ar"} ,
        {"id": "FR", "value": "fr"} ,
        {"id": "GB", "value": "en"} ,
        {"id": "US", "value": "en"} 
    ],
    }
    voici la page HTML que je l'utilise:

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    <!DOCTYPE html><!--HTML5 doctype-->
    <html>
    <head>
    	<title>Your New Application</title>
    	<meta http-equiv="Content-type" content="text/html; charset=utf-8">
    	<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0" />
    	<style type="text/css">
    		/* Prevent copy paste for all elements except text fields */
    		*  { -webkit-user-select:none; -webkit-tap-highlight-color:rgba(255, 255, 255, 0); }
    		input, textarea  { -webkit-user-select:text; }
    		body { background-color:white; color:black }
    	</style>
     
    	<script type="text/javascript">
    		/* This code is used to run as soon as Intel activates */
    		var onDeviceReady=function(){
    		//hide splash screen
    		intel.xdk.device.hideSplashScreen();
    		};
    		document.addEventListener("intel.xdk.device.ready",onDeviceReady,false);
    	</script>
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
        <script>
     
            //When DOM loaded we attach click event to button
            $(document).ready(function() {
     
                //after button is clicked we download the data
                $('.button').click(function(){
     
                    //start ajax request
                    $.ajax({
                        url: "pays.json",
                        //force to handle it as text
                        dataType: "text",
                        success: function(data) {
     
                            //data downloaded so we call parseJSON function 
                            //and pass downloaded data
                            var json = $.parseJSON(data);
                            //now json variable contains data in json format
                            //let's display a few items
                            $('#results').html('Country: ' + json.menu.id[0] + '<br />Language: ' + json.menu.value[0]);
                        }
                    });
                });
            });
        </script>
     
    </head>
    <body>
        <a href="pays.json" target="_blank">Open JSON file</a><br />
        <input type="button" value="Get and parse JSON" class="button" />
        <br />
        <span id="results"></span>
    </body>
    </html>
    Le problème lorsque j'exécute, je ne reçoit rien en cliquant sur le bouton "Get and parse JSON". Je me demande comment faire pour afficher le contenu de mon fichier JSON.

    Merci!

  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 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    => et tu reçois un json directement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    $.ajax({
    	url: "pays.json",
    	//force to handle it as text
    	dataType: "json",
    	success: function(data) {
     
    		//data downloaded so we call parseJSON function 
    		//and pass downloaded data
    		//now json variable contains data in json format
    		//let's display a few items
    		$('#results').html('Country: ' + data['menu'][0]['id'] + '<br />Language: ' + data['menu'][0]['value']);
    	}
    });
    });
    Edit:

    SANS SE TROMPER DANS LES INDEXES ENTRE ARRAY ET JSON ...
    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
    Débutant  
    Inscrit en
    Mai 2006
    Messages
    705
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 705
    Points : 117
    Points
    117
    Par défaut
    J'ai testé votre code mais rien ne s'affiche dans la balise <span>

    En contre partie, est ce que mon fichier JSON est correcte syntaxiquement?

  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 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Vérifie dans la console (firebug) l'état des échanges xhr ...

    sinon pour ce qui est du format du json
    http://jsfiddle.net/uM35r/ devrait répondre à ta question
    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
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par L'aigle de Carthage
    est ce que mon fichier JSON est correcte syntaxiquement?
    Citation Envoyé par SpaceFrog
    SANS SE TROMPER DANS LES INDEXES ENTRE ARRAY ET JSON ...
    La réponse a déjà été donnée !

    Ton JSON est syntaxiquement correct, mais le traitement est incohérent avec sa structure...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  6. #6
    Débutant  
    Inscrit en
    Mai 2006
    Messages
    705
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 705
    Points : 117
    Points
    117
    Par défaut
    Bonjour,

    En parlant du syntaxe, je voudrais savoir comment faire pour parser ce code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    {
    "licenses": [
            {
                "type": "Apache",
                "url": "http://www.apache.org/licenses/LICENSE-2.0"
            },
            {
                "type": "GPL v2",
                "url": "http://www.gnu.org/licenses/gpl-2.0.html"
            }
        ]
    }
    ,
    En utilisant le code HTML:

    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
    <script src="libs/jquery-1.10.1.js"></script>
    < script >
    //When DOM loaded we attach click event to button
    $(document).ready(function(){
        //after button is clicked we download the data
        $('.button').click(function(){
            //start ajax request
            $.ajax({
                url:      "data.json",
                //force to handle it as text
                dataType: "text",
                success:  function(data){
                    //data downloaded so we call parseJSON function 
                    //and pass downloaded data
                    var json = $.parseJSON(data);
                    //now json variable contains data in json format
                    //let's display a few items
                    $('#results').html('Plugin name: ' + license[0].type + '<br />Author: ' + license[0].url);
                }
            });
        });
    });
    </script>

  7. #7
    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 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    tu attends un JSON ....


    y'a la virgule à la finc du json ???
    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 !

  8. #8
    Débutant  
    Inscrit en
    Mai 2006
    Messages
    705
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 705
    Points : 117
    Points
    117
    Par défaut
    Oui, je veux parser ce code JSON

  9. #9
    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 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    si tu mets dataType JSON plsu besoin de parser ...

    et si tu as une virgule à la fin ...
    faudra l'enlever si tu veux le parser
    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 !

Discussions similaires

  1. Réponses: 8
    Dernier message: 25/03/2014, 04h24
  2. C++ lecture d'un tableau dans un fichier
    Par nicoss dans le forum C++
    Réponses: 1
    Dernier message: 28/05/2006, 10h26
  3. Mettre les valeurs d'un tableau dans un fichier
    Par ero-sennin dans le forum C++
    Réponses: 4
    Dernier message: 14/03/2006, 13h47
  4. Réponses: 9
    Dernier message: 05/11/2005, 14h59
  5. Réponses: 4
    Dernier message: 12/10/2005, 21h22

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