Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Wie asynchroner Request in Funktion verwenden

Mitglied: mabue88

mabue88 (Level 2) - Jetzt verbinden

18.09.2013 um 14:23 Uhr, 1470 Aufrufe, 2 Kommentare

Hallo,

ich nutze den Geocoder von Google um die Koordinaten zu einer Adresse zu erhalten. Der Request erfolgt dabei asynchron. Ich will aber eine Funktion erstellen, der ich die Adresse übergebe und als Antwort dir dazugehörigen Koordinaten erhalten. Hat jemand einen Tipp dafür?

So weit bin ich bis jetzt:
[code]
function KoordinatenInAdresseUmwandeln(adresse) {
var geocoder = new google.maps.Geocoder();

geocoder.geocode({ 'address': adresse }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
koordinaten = new google.maps.LatLng(results[0].geometry.location.lat(), results[0].geometry.location.lng());
}
else
alert('error: ' + status);
});

return "noch nichts";
}
[/code]
Mitglied: Nobody-Is-Perfect
18.09.2013 um 14:34 Uhr
Hi mabue88,

Du versuchst hier aus dem asynchronen Schema auszubrechen.

Im Normalfall würde man der function einfach das Ziel des Ergebnisses mitteilen, z.B. die ID des DOM - Elements
und in der Ergebnisfunktion "function (results, status) {" das Element suchen und den Wert setzen.
Dann bleibt alles schön asynchron und die Funktion selbst hat keine Rückgabe.

Wenn man jedoch auf die Ausführung warten muss, kann man sich mal unter dem Stichwort "Deferred" bei jQuery schlau machen.


Grüße vom Nobody
Bitte warten ..
Mitglied: colinardo
20.09.2013, aktualisiert um 13:01 Uhr
Hallo mabue88,
du könntest deine "Function" so gestalten um sie an mehreren Stellen in deinem Code zu verwenden:
getCoords = function(adresse, f){
	var geocoder = new google.maps.Geocoder();
	geocoder.geocode({ 'address': adresse }, function (results, status) {
		if (status == google.maps.GeocoderStatus.OK) {
			koordinaten = new google.maps.LatLng(results[0].geometry.location.lat(), results[0].geometry.location.lng());
			f("OK",koordinaten);
		} else {
			f("ERROR",status);	
		}
	});
}
Um dann die Koordinaten abzufragen benutzt du folgenden Aufruf welchen du in dein synchrones Schema einbauen kannst.
getCoords("Berlin", function(status,result) {
	if (status == "OK"){
                // die variable 'result' enthält hier die Koordinaten
	}else{
		// die Variable 'result' enthält hier den Fehler;	
	}
});
Grüße Uwe
Bitte warten ..
Ähnliche Inhalte
Router & Routing
ICMP Hin- und Rückweg asynchron
Frage von tvprog1Router & Routing3 Kommentare

Hallo, ist es technisch möglich, ICMP echo Pakete die für NIC1 (192.168.100.10/24) von einem Rechner bestimmt sind über NIC1 ...

Microsoft Office
Excel Wenn-Funktion
gelöst Frage von freshman2017Microsoft Office2 Kommentare

Moin Moin und guten Abend, ich bräuchte da nochmal Eure Hilfe. Ich habe eine Exelliste mit verschiedenen Werten: Hier ...

Monitoring
Spiceworks Inventarisierungs Funktion
gelöst Frage von M.MarzMonitoring1 Kommentar

Hallo zusammen, wie kriegt es Spiceworks hin, von den Clients die ganzen Informationen wie OS, RAM, Storage, ServiceTag usw. ...

Microsoft Office
Verschachtelte wenn Funktion
gelöst Frage von PeppinoMicrosoft Office4 Kommentare

Hallo zusammen, ich würde gerne folgenden Output haben (Budget und Ausgabencontrolling): Angenommen ich habe ein Budget von 10.000Euro. jetzt ...

Neue Wissensbeiträge
Administrator.de Feedback

Entwicklertagebuch: Codeblöcke auf unseren Seiten

Information von admtech vor 9 StundenAdministrator.de Feedback3 Kommentare

Hallo Administrator User, Unsere Codeblöcke werden ab sofort anders dargestellt. Die Codeblöcke können nun direkt per Copy&Paste kopiert werden. ...

Humor (lol)
Internet - auch 2020 noch Neuland ?
Erfahrungsbericht von Henere vor 22 StundenHumor (lol)2 Kommentare

Heute eine Mail der Schule meiner Tochter bekommen. Blabla Umweltschutz bla bla siehe Anhang. Dumm nur: Da hab ich ...

Sicherheit
Diverse Sicherheitsprobleme aus dem Hause Intel
Tipp von DerWoWusste vor 2 TagenSicherheit

Unter anderem muss man mal wieder die Treiber für Intel HD Graphics updaten

Vmware

ESXi Management über PfSense (IPsec Tunnel) führt zu Massen an TCP Retransmissions

Tipp von Spirit-of-Eli vor 3 TagenVmware7 Kommentare

Moin zusammen, hier ein kurzer Beitrag zu einem Problem sobald man die Management Seite eines ESXs über einen IPsec ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
Größe der Partition lässt sich nicht ändern mit gparted
Frage von achkleinFestplatten, SSD, Raid17 Kommentare

Hallo, ich habe eine 480GB auf eine 1TB-SSD geklont. Jetzt möchte ich den freien Speicherplatz per gparted an die ...

Sicherheit
Wie Kann Man eine IT-Notfallhandbuch erstellen für petasan
Frage von 142658Sicherheit14 Kommentare

Hallo Leute ich muss bald meine abschlussprojekt schreiben und brauch dringend hilfe wie man ein IT-Notfallhandbuch erstellen für Petasan(eine ...

Netzwerkmanagement
Werde dauernd aus dem WLAN geworfen (RouterOS)
gelöst Frage von amdkeksNetzwerkmanagement14 Kommentare

Hallo Zusammen, ich habe gestern ein update meiner Mikrotikgeräte gemacht und habe nun überall Version 6.45.5 drauf. Mikrotik Routerboard, ...

Windows Installation
Installation und Admin-Rechte
Frage von UserUWWindows Installation12 Kommentare

Annahme: UAC ist aktiv, der User ist "normaler" Benutzer. Eine Installation via setup.exe kann man in der Regel auf ...