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 :

Appel de fonction avec paramètres différents


Sujet :

APIs Google

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Par défaut Appel de fonction avec paramètres différents
    Bonjour, j'ai une fonction :

    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
    function loadItineraire(result) {//directionsDisplay.getDirections()
     
        var itineraire = result.routes[0].legs[0];
     
        document.getElementById('latitude').value = itineraire.end_location.lat();
        document.getElementById('longitude').value = itineraire.end_location.lng(); //formatted_address
        codeLatLng(itineraire.end_location.lat(), itineraire.end_location.lng(), 'adresse'); ca fonctionne
     
        document.getElementById('LatOrg').value = itineraire.start_location.lat();
        document.getElementById('LongOrg').value = itineraire.start_location.lng(); //formatted_address
        //codeLatLng(itineraire.start_location.lat(), itineraire.start_locationn.lng(), 'txtorigine'); ne fonctionne pas
     
        computeTotalDistance(result);
     
        showForm();
    }
    la meme ligne avec des differents parametres ne fonctionne pas

  2. #2
    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 : 55
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    document.getElementById('LongOrg').value = itineraire.start_location.lng(); //formatted_address
    codeLatLng(itineraire.start_location.lat(), itineraire.start_locationn.lng(), 'txtorigine');
    Comme ça, tu vois mieux ?
    Avant de poster, un minimum de débogage s'impose : la console du navigateur (touche F12 pour l'activer) t'aurait immédiatement mis sur la piste.
    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

  3. #3
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Par défaut
    MErci infiniment pour la reponse, j'ai copié la ligne qui marche une 100 aine de fois mais j'ai pas vu l'erreur

    J'ai un autre probleme bizarre aussi,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
        document.getElementById('latitude').value = itineraire.end_location.lat();
        document.getElementById('longitude').value = itineraire.end_location.lng(); //formatted_address
        codeLatLng(itineraire.end_location.lat(), itineraire.end_location.lng(), 'adresse'); // ca marche sans probleme
     
        document.getElementById('LatOrg').value = itineraire.start_location.lat();
        document.getElementById('LongOrg').value = itineraire.start_location.lng(); //formatted_address
        codeLatLng(itineraire.start_location.lat(), itineraire.start_location.lng(), 'txtorigine');ca marche pas, mais si je change le champ 'adresse' au lieu de 'txtorigine' ca marche
    sachant que je met :

    c# :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    txtorigine.Attributes.Add("onChange", "FindOrigine();");
    Js :
    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 FindOrigine() {
        if (directionsDisplay.getDirections() == null) {
            var address = document.getElementById('txtorigine').value;
     
            // script uses our 'geocoder' in order to find location by address name
            geocoder.geocode({ 'address': address }, function (results, status) {
                if (status == google.maps.GeocoderStatus.OK) { // and, if everything is ok
     
                    // we will center map
                    var OrigineLocation = results[0].geometry.location;
                    map.setCenter(OrigineLocation);
     
                    // store current coordinates into hidden variables
                    document.getElementById('LatOrg').value = results[0].geometry.location.lat();
                    document.getElementById('LongOrg').value = results[0].geometry.location.lng();
                }
            });
     
            tracerItineraire();
        }
    }
    Je ne vois pas ou est l'erreur

  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
    Bonjour,
    J'ai un autre probleme bizarre aussi,
    aucun doute là on est bien avancé avec une telle description du problème

    Néanmoins tu fais appel dans ta fonction à la fonction tracerItineraire(); qui s’exécute avant que la réponse ne soit de retour.

    Je t'engage fortement à regarder SERIEUSEMENT comment sont construit les exemples qui sont fournis sur la documentation de l'API

  5. #5
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    1 596
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 1 596
    Par défaut
    Nosmoking : merci pour vos reponses et vos efforts avec moi mais je suis une personne qui apprend en exécutant et en pratiquant, j'ai lu la documentation mais je ne la concrétise que lorsque je vois un exemple devant moi,

    que dois je faire dans ce cas pour exécuter le bout de code avant de tracer l'itinéraire

  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
    ...je suis une personne qui apprend en exécutant et en pratiquant,...
    Tu n'est quand même pas trop téméraire dans tes essais

    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
    geocoder.geocode(
      {
        'address': address
      },
      function (results, status) {
        if (status == google.maps.GeocoderStatus.OK) { // and, if everything is ok
          // we will center map
          var OrigineLocation = results[0].geometry.location;
          map.setCenter(OrigineLocation);
     
          // store current coordinates into hidden variables
          document.getElementById('LatOrg').value = results[0].geometry.location.lat();
          document.getElementById('LongOrg').value = results[0].geometry.location.lng();
     
          // Placée ici la fonction n'est appelée que lorsque la réponse est OK
          tracerItineraire();
        }
    });
    il te faut juste déplacer l'appel de ta fonction dans la portion de code appartenant au SI test OK.

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

Discussions similaires

  1. Appel de fonction avec paramètre différent
    Par Oberown dans le forum jQuery
    Réponses: 1
    Dernier message: 20/06/2013, 17h02
  2. Appel à une fonction avec paramètre contenant apostrophe
    Par tomy29 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 02/02/2012, 19h10
  3. [Natif] Appel de fonction avec paramètre prédefini
    Par dsryam dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 02/06/2009, 02h35
  4. [DOM] Appel fonction avec paramètre depuis document.write
    Par kev42100 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 06/05/2008, 14h12
  5. [Function]Appel de fonction avec paramètre
    Par julienOriano dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 02/06/2006, 07h48

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