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 :

definition d'un tableau à 2 dimensions


Sujet :

JavaScript

  1. #1
    Membre du Club Avatar de floopi51
    Inscrit en
    Octobre 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 136
    Points : 62
    Points
    62
    Par défaut definition d'un tableau à 2 dimensions
    bonjour

    Je travaille avec une carte google map où je souhaite faire un ajout de markers pour identifier un point sur un "onclick" sur un bouton.

    J'utilise le code ci-dessous et j'ai une erreur dans la console : tab_coord.lat is undefined.

    Voici un extrait de mon code : (c'est du javascript généré par PHP)

    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
     
    <?php>
     
    //le tableau $tab_coord contient des données recuperees dans une Bdd
    .........
     
        print('<script type="text/javascript" >');
        print('var tab_coord = new Array();');
        $i=0;
        foreach($tab_coord as $lat => $long) {
          
          print('tab_coord.lat['.$i.']='.$lat.';');
          print('tab_coord.long['.$i.']='.$long.';');
          $i++;
        }
        print('SeeMarkers(tab_coord);');
        print('var index='.$i--.';');
    //    print('<input type="button" onclick="SeeMarkers(tab_latlong)" value="display all markers" />');
      print('</script>');
     
       
      }
    ?>
     
    <input type="button" onclick="SeeMarkers(tab_coord)" value="display all markers" />
    <?php
    //fin du code php
    ?>
    La fonction SeeMarkers est définie ci-dessous :

    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
     
    function SeeMarkers(latlong_tab) {
     
      var tab_markers = [];
      var markers = [];
     
      allmarkers.length = 0;
      for (var i in latlong_tab) {
     
        var latitude = latlong_tab.lat[i];
        var longitude = latlong_tab.long[i];
        alert(latitude);
        alert(longitude);
        var point = new GPoint(latitude, longitude);
        var newMarker = new GMarker(point);
     
        markers.push(newMarker);
        allmarkers.push(newMarker);
      }
      mgr.addMarkers(markers,0,3);
    }
    Quelqu'un saurait il pourquoi j'ai cette erreur ???

    merci

    Floopi

  2. #2
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut
    Bonjour,

    Vous déclarez un tableau, vous vous en servez comme d'une structure-tablesque. En gros, il faudrait faire un tableau de structures:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    var maStructure = {
       lat:0,
       long:0
    };
     
    var monTableau = new Array();
     
    maStructure.lat = 10;
    maStructure.long = 25;
    monTableau[0] = maStructure;

  3. #3
    Membre du Club Avatar de floopi51
    Inscrit en
    Octobre 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 136
    Points : 62
    Points
    62
    Par défaut
    Cool merci, je n'ai plus le message d'erreur et j'ai bien les données quand je suis dans le code de ma fonction SeeMarkers.

    Par contre quand je clique sur le bouton que j'ai créé, rien ne se passe, il doit y avoir un probleme avec l'appel à l'API Google maps.

    Je continue de creuser.....

  4. #4
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut
    Ou bien une structure de tableaux, en fait, pour ne pas devoir modifier la fonction SeeMarkers:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    var maStructure = {
       lat: new Array(),
       long: new Array()
    };
     
    maStructure.lat[0] = 10;
    maStructure.long[0] = 25;
     
    maStructure.lat[1] = 20;
    maStructure.long[1] = 20;

  5. #5
    Membre du Club Avatar de floopi51
    Inscrit en
    Octobre 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 136
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par vermine Voir le message
    Ou bien une structure de tableaux, en fait, pour ne pas devoir modifier la fonction SeeMarkers:

    J'ai modifié la fonction SeeMarkers, no problem !

    C'est bien un probleme avec les API google maps qui me gêne maintenant......

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

Discussions similaires

  1. [Collections] lecture tableau 2 dimensions
    Par heloise dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 30/09/2004, 10h49
  2. [tableau à 2 dimensions] association String et float
    Par LoLoSS dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 12/07/2004, 10h53
  3. Tableau à n dimensions
    Par youb dans le forum MFC
    Réponses: 10
    Dernier message: 13/05/2004, 14h13
  4. Passage d'un tableau à deux dimensions
    Par karl3i dans le forum C
    Réponses: 3
    Dernier message: 20/10/2003, 14h50
  5. Réponses: 23
    Dernier message: 21/08/2003, 07h16

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