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 :

Construire un tableau associatif sans écraser les index


Sujet :

JavaScript

  1. #21
    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 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    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 661
    Billets dans le blog
    1
    Par défaut
    J'ai modifié le code précédent pendant que tu testais ...
    je récupère le data et fais un each dessus pour peupler une liste avec le name ...
    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 !

  2. #22
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2015
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2015
    Messages : 61
    Par défaut
    Merci indéfiniment de votre aide.... cela fonctionne a merveillle

    Mais le seul hic est que je voudrais transmettre la variable que je rempli dans success de ajax dans mon select....la variable est array...

    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
     
    var $categorySelect = $('#categorySelect');
            var $categoryForm = $('#categoryForm');
            var $listPoints = $('#list-interest-points');
     
            var array = {};
     
            // load categoryName(select) and InterestPoints(list)
            $.ajax({
                type: "GET",
                url: '/index_points_category/', 
                dataType: 'json',
                success: function(data) {
                    $.each(data, function(key,value) {
                        var categoryName = key;
                        var arrayPoints = value; 
     
                        array.categoryName = arrayPoints;
                    });
                }
            });
     
                var currentJson;   
     
                hash_sort_cat= {"Gare":[{"address":"","city":"","latitude":null,"longitude":null,"name":"test","postal_code":""},{"address":null,"city":null,"latitude":null,"longitude":null,"name":"test","postal_code":null}],"Aeroport":[{"address":null,"city":null,"latitude":null,"longitude":null,"name":"test_aero","postal_code":null},{"address":null,"city":null,"latitude":null,"longitude":null,"name":"essai","postal_code":null}],"Hopital":[{"address":null,"city":null,"latitude":null,"longitude":null,"name":"test_hop1","postal_code":null},{"address":null,"city":null,"latitude":null,"longitude":null,"name":"test_hop2","postal_code":null}]}
     
                $.each(hash_sort_cat, function(key,val){
                    $categorySelect.append($("<option/>").val(key).text(key).data('points',val));
                })
     
                       $categorySelect.on('change', function(){ 
                currentJson = $(this).find(':selected').data('points');
                $listPoints.empty();
                $.each(currentJson, function(idx,val){  
                    $listPoints.append($('<a href="#" class="list-group-item">').text(val.name)) ;
                });
            })

  3. #23
    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 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    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 661
    Billets dans le blog
    1
    Par défaut
    ben intègre simplement le code dans le success en utilisant data comme json ...
    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
     
    var $categorySelect = $('#categorySelect');
            var $categoryForm = $('#categoryForm');
            var $listPoints = $('#list-interest-points');
        var currentJson;   
     
     
     
            // load categoryName(select) and InterestPoints(list)
            $.ajax({
                type: "GET",
                url: '/index_points_category/', 
                dataType: 'json',
                success: function(data) {
                     $categorySelect.empty();
               $.each(hash_sort_cat, function(key,val){
                    $categorySelect.append($("<option/>").val(key).text(key).data('points',val));
                 })
                     });
                }
            });
     
     
     
     
     
                $categorySelect.on('change', function(){ 
                    currentJson = $(this).find(':selected').data('points');
                })
     
                $categorySelect.on('change', function(){ 
                    $listPoints.empty();
                    $.each(currentJson, function(idx,val){  
                        $listPoints.append($('<a class="list-group-item">').text(val.name)) ;
                    })
                });
    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 !

  4. #24
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2015
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2015
    Messages : 61
    Par défaut
    Impossible je ne souhaiterais n'avoir qu'une seule requéte...remplir mon array et ensuite traiter mon array en dehors de ma function ajax...

    Je sais que Ajax est asynchrone....

  5. #25
    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 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    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 661
    Billets dans le blog
    1
    Par défaut
    tu ne pourras peupler tes liste qu'une fois l'ajax accompli ... donc dans le success
    cf ci dessus
    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 !

  6. #26
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2015
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2015
    Messages : 61
    Par défaut
    Aucune autre solution ?

    Merci de votre aide, toute au long de la journée ^^

    Passer une bonne soirée.

  7. #27
    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 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    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 661
    Billets dans le blog
    1
    Par défaut
    tu peux sur le success renseigner le current json ...
    puis l'utiliser plus tard

    Mais je ne vois pas bien la chronologie de ton truc ...
    J'imagine un truc du genre :
    sur le success tu renseignes le currenJson ...
    et tu affiches un bouton
    au click du bouton la liste se peuple
    ça c'est possible
    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. #28
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2015
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2015
    Messages : 61
    Par défaut
    Ok moi je voudrais récupérer mon data le passer dans un array pour m'en servir plus tard...


    Merci quand même pour votre aide, vous m'avez fais découvrir des trucs que je ne connaissais pas et ça c'est cool ^^

    Cordialement

  9. #29
    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 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    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 661
    Billets dans le blog
    1
    Par défaut
    .mais il faut virer interest.name
    je ne comprends pas ce que tu veux mettre dans ta liste ???

    des liens href à priori ? tu veux mettre quoi comme texte si tu ne mets pas le name ?
    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 !

  10. #30
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2015
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2015
    Messages : 61
    Par défaut
    Bonjour,

    Au final mon problème est résolu...voici le code final :

    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
     
        //ajax interest points 
            var $categorySelect = $('#categorySelect');
            var $categoryForm = $('#categoryForm');
            var $listPoints = $('#list-interest-points');
     
            var array = {};
     
            $.ajax({
                type: "GET",
                url: '/index_points_category/', 
                dataType: 'json',
                success: function(data) {
                        alert("ok");
                        CreateSelectAndList(data)
                }
            });
     
            function CreateSelectAndList(data){ 
     
                var currentJson;   
     
                $.each(data, function(key,val){
                    $categorySelect.append($("<option/>").val(key).text(key).data('points',val));
                })
     
                $categorySelect.on('change', function(){ 
                    currentJson = $(this).find(':selected').data('points');
                    $listPoints.empty();
                    $.each(currentJson, function(key,val){  
                        $listPoints.append($('<a href="#" class="list-group-item">').text(val.name)) ;
                    });
                }); 
            }
    Merci pour votre aide .

    Cordialement

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [Toutes versions] Spliter sans écraser les valeurs ou sur plusieurs délimiter
    Par DonKnacki dans le forum Excel
    Réponses: 3
    Dernier message: 29/10/2012, 14h33
  2. Déplacer ligne de tableau sans écraser les autres
    Par kalitous dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 17/01/2012, 19h36
  3. [BO XI R2] Import BIAR sans écraser les droits utilisateur
    Par SebastienM dans le forum Administration-Migration
    Réponses: 7
    Dernier message: 26/01/2009, 14h48
  4. [MySQL] insérer sans écraser les données déjà existantes d'une table
    Par brajae85 dans le forum PHP & Base de données
    Réponses: 19
    Dernier message: 12/05/2008, 11h33
  5. Copier un dossier sans écraser les dossiers de destination
    Par TSalm dans le forum Administration système
    Réponses: 2
    Dernier message: 14/02/2008, 18h28

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