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 :

Tester l'existence d'un point avec l'api google map


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 47
    Points : 25
    Points
    25
    Par défaut Tester l'existence d'un point avec l'api google map
    Bonjour a tous !
    Je galère un peu avec l'API google Map...
    J'ai un formulaire, l'utilisateur rentre son adresse. Ensuite, je veux calculer son itinéraire vers un point fixe.
    Le probleme, c'est que lorsqu'il entre une adresse inexistante, la carte buggue. Du coup je veux tester l'existe du point avant de calculer l'itinéraire...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    var geocoder = new GClientGeocoder();
    // Ma fonction sensée tester l'existence du point
        function testpoint(address){
        	geocoder.getLatLng(address,
    			function(point){
    				if (!point){
    					alert(address + " n'a pas été trouvé.");
    					return 0;
    				}
    				else
    					return 1;
    				});
    	}
    Et pour tester l'existence du point :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if(testpoint(adresse)){
         // Mon calcul d'itinéraire, et tout...
    }

    Le probleme vient bien de ma fonction testpoint() car si je remplace if(testpoint(adresse)) par if(1), ça fonctionne...
    Merci d'avance pour votre aide !

  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 640
    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 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    en principe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function(point) {
                if (!point) {
                  alert(address + " not found");
                }
    gère ce cas de figure ...

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 47
    Points : 25
    Points
    25
    Par défaut
    Merci pour la réponse rapide !
    Par contre, je vois pas comment utiliser seulement fonction(point)...

  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 640
    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 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    essaye juste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if (!point){alert(address + " n'a pas été trouvée.");
                    return false;}

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 47
    Points : 25
    Points
    25
    Par défaut
    J'ai remplacé, comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     function testpoint(address){
        	geocoder.getLatLng(address,
    			function(point){
    				if (!point){alert(address + " n'a pas été trouvée.");
                    return false;}
    				});
    	}
    Et ça ne change rien...

  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 640
    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 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    sans le function , juste le test !!

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 47
    Points : 25
    Points
    25
    Par défaut
    Finalement j'ai trouvé la solution ! J'ai viré ma fonction testpoint() et je teste l'existence directement.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    		var geocoder2 = new GClientGeocoder();
    		geocoder2.getLatLng(adresse, function(point){
    				if (!point){
    					alert(adresse + " n'existe pas.");
    				}
    				else{
    					// Mon calcul d'itinéraire...
    				}
    			});

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

Discussions similaires

  1. [Google Maps] Creer plusieurs rectangles modifiables avec l'api Google maps v3
    Par nabilou82 dans le forum APIs Google
    Réponses: 2
    Dernier message: 22/07/2011, 14h13
  2. [Google Maps] Livre : développer avec les API Google Maps
    Par Idelways dans le forum APIs Google
    Réponses: 1
    Dernier message: 15/07/2011, 16h10
  3. Rafraichir les données XML avec l'API Google Maps
    Par olaf_le_preux dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 18/02/2010, 20h37

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