0
私はlatとlngの値を返すために非同期を使用するgoogle mapsジオコーダを使用しています。完璧に動作します。私はそれらの緯度経度を検索するために私のデータベースへのajax呼び出しに渡したいと思います。非同期部分がいつajax部分を実行するために行われたかを知る方法はわかりません。Googleはgeocoderをあまりにも多くの再帰をajaxを使用してマップします
これを実行すると、latとlngは常に空です。
これを行うより良い方法はありますか?
function getLatLng(address, fn){ geocoder.geocode({ 'address': address}, function(results, status) { fn(results[0].geometry.location.lat(),results[0].geometry.location.lng()); }); } getLatLng(address, function(lat,lng){ var formData = $('#form').serialize(); if (lat!='' && lng!='') { $.ajax({ type: "POST", url: "/_templates/map_ajax", dataType:'json', data: formData, error: function() { $('#status').text('Update failed. Try again.').slideDown('slow'); }, success: function(formData) { buildMarkers(formData); } }); //ajax close } }); // close getLatLng