ottscho
Goto Top

Google API Einbinden

Hallo zusammen,

ich habe folgendes Script im Internet entdeckt. Funktioniert Super.
Mein Ziel, ohne Karte etc. einfach nur die Entfernung zweier Adressen auszugeben.

<html>
    <head>
        <title>Test</title>
        <script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAIBlfPcR43RwgLRxQKjAy2xRzxUU7HWfUhvWvbguoaaquJfPF1RQR1WAEgPwjeFfjvNmou0qqiz48MA" type="text/javascript"></script>  
        <script type="text/javascript">  
            //<![CDATA[
            var map;
            var directions;

            function load() {
                if (GBrowserIsCompatible()) {
                    map = new GMap2(document.getElementById("maps"));  
                    directions = new GDirections(map, document.getElementById("directions")); //map, document.getElementById("directions")  
                    setDirections("Paderborn, Haidhügel 15", "Paderborn, Detmolder Straße");  
                    //Hier Ausgabe veranlassen
					
                    GEvent.addListener(directions, "load", function() {   
alert( directions.getDistance().meters); //object->meters 
});
                }
            }

            function setDirections(fromAddress, toAddress) {
                directions.load("from: " + fromAddress + " to: " + toAddress);  
            }
       
            //]]>
        </script>
    </head>
    <body onload="load()" onunload="GUnload()">  
		<div id="maps"></div>  
        <div id="directions"></div>  
    </body>
</html>

Nun mein vorhaben.
Wir arbeiten mit dem Dynamics CRM 4.0 und ich möchte hier das Script verwenden.
Ausgangssituation, ich habe ein Feld => Startpunkt und ein Feld => Ziel
Nun habe ich das OnChange für das Zielfeld aktiviert und habe nun die Möglichkeit mein Script in OnChange { } einzubinden.

So sieht mein erfolgloser Versuch aus:
OnChange {
var url = "http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAIBlfPcR43RwgLRxQKjAy2xRzxUU7HWfUhvWvbguoaaquJfPF1RQR1WAEgPwjeFfjvNmou0qqiz48MA";  

var scriptElement = document.createElement("<script src'" + url + "' language='javascript'>");  
document.getElementsByTagName("head").insertAdjacentElement("beforeEnd",scriptElement);  

var map;
var directions;

map = new GMap2();
directions = new GDirections(); 
setDirections("Paderborn, Haidhügel 15", "Paderborn, Detmolder Straße");  
GEvent.addListener(directions, "load", function() {   
alert( directions.getDistance().meters); 
});

  function setDirections(fromAddress, toAddress) {
                directions.load("from: " + fromAddress + " to: " + toAddress);  
            }

}

Leide geht garnichts. Gut, ich kenne mich mit JavaScript auch nicht besonders aus.
1. Wird GMap2 nicht erkannt. Es kommt die Meldung "GMap2 nicht definiert". Das lässt daraus schließen, dass das Einbinden der API nicht klappt.
2. Im Original Script wird die Map und Directions in ein DIV geladen. Sowas habe ich in meiner Seiten nicht. Ich will ja auch nichts angezeigt bekommen, sondern nur die Entfernung.

Ich hoffe ihr könnt mir unter die Arme greifen.

Vielen Dank

Gruß
ottscho

Content-Key: 143845

Url: https://administrator.de/contentid/143845

Printed on: April 16, 2024 at 05:04 o'clock

Member: dog
dog May 31, 2010 at 18:37:35 (UTC)
Goto Top
Cross Posting: http://www.mediengestalter.info/forum/4/javascript-google-api-143774-1. ...

Mir ist nicht klar, warum du das Google Maps Script selbst per JS laden willst.

Das größere Problem ist aber, dass du nicht einfach einen Maps API Key klauen kannst, sondern dass du einen selbst beantragen musst.
Member: ottscho
ottscho Jun 01, 2010 at 05:30:56 (UTC)
Goto Top
Seit wann gibt es ein Cross Posting bei verschiedenen Forums? *lächerlich*

Ich habe einen eigenen Key, keine Angst. Auf unsere Homepage verwenden wir auch Google Map mit eigenem Key.
Ich habe eben nur per Copy & Past den Quellecode welchen ich im Internet gefunden habe, geposted.

Wie bekomme ich sonst Distanz und KM raus, wenn ich es nicht per JS Lade? Es muss ja mit in die CRM Felder übernommen werden.

Mittlerweile habe ich es hinbekommen.....