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

APIs Google Discussion :

Supprimer un marker par son identifiant [Google Maps]


Sujet :

APIs Google

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Février 2008
    Messages : 183
    Par défaut Supprimer un marker par son identifiant
    bonjour,

    Je ne parvient pas a comme le titre l'indique : supprimer un marker par son id.

    en faite, j'ai plusieurs marker sur la maps et je souhaite en cliquant sur l'un deux qu'il se supprime.

    J'identifie le marker comme cela :
    i est un nombre de la boucle for

    je voudrais donc recuperer l'id du marker sélectionner pour le supprimer. Si vous avez une autre solution n’hésitez pas. car pour le moment si je fait :
    il me supprime le dernier marker placer sur la map et pas celui sur le quelle je clic.

    En vous remerciant d'avance.

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par défaut
    Bonjour,
    un simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      google.maps.event.addListener( oMarker, 'click', function(){
        this.setMap( null);
      });
    ne suffit pas?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Février 2008
    Messages : 183
    Par défaut
    En effet ça me parait logique comme ça, mais ça ne fonctionne pas. La fonction n’est pas lancer au click. pourtant je met bien l'objet marker en question dans le premier paramètre.

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par défaut
    ...mais ça ne fonctionne pas...
    comment veux tu que l'on t'aide sans une once de code.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    183
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Février 2008
    Messages : 183
    Par défaut
    Oui je comprend pour le code, mais j'ai tout le code sur la même page pour le moment et il y a plus 1000 lignes.

    en faite j'ai compris pourquoi ça marche pas, le marker que je veux supprimer suite au clic dessus, sont des marker qui sont créer après l'initialisation de la map, donc du coup l’événement prend en compte les marker deja existant seulement (la ça fonctionne.) mais si je place un marker (suite a un clic qui place un marker) la ce ne marche plus, le nouveau marker n'est pas pris en compte.

    Pour précision, je place le addListener dans la fonction Inisialise. doit je placer autre part ?

    Merci

  6. #6
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par défaut
    dans ton cas il te faut créer une fonction d'ajout de marker et c'est dans celle ci que tu ajoutes l'événement onclick sur le marker.

    cela pourrait donner
    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
    function initCarte(){
      // creation de la carte
      var oMap = new google.maps.Map(document.getElementById("div_carte"), {
        'zoom' : 6,
        'center' : new google.maps.LatLng( 46.80, 1.70),
        'mapTypeId' : google.maps.MapTypeId.ROADMAP
      });
      // evenement sur click de la carte
      google.maps.event.addListener( oMap, 'click', function( data){
        // création du marker
        var oMarker = new google.maps.Marker({
          'position' : data.latLng,
          'map' : this
        });
        // ajout événement
        google.maps.event.addListener( oMarker, 'click', function(){
          this.setMap( null);
        });
      });
    }

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

Discussions similaires

  1. Identifier un user par son login ou son email
    Par ivanb dans le forum Plugins
    Réponses: 15
    Dernier message: 22/04/2011, 08h16
  2. [PHP 4] [Tableaux] Tableau : supprimer une clé par son N° d'ordre
    Par renaud26 dans le forum Langage
    Réponses: 2
    Dernier message: 14/07/2009, 10h02
  3. supprimer une ligne du fichier en fonction de son identifiant
    Par kabirou ousseini dans le forum C++
    Réponses: 0
    Dernier message: 28/04/2009, 21h21
  4. accès à un attribut de classe par son identifiant
    Par tigrou59 dans le forum Langage
    Réponses: 2
    Dernier message: 27/06/2007, 09h57

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