[英]html5/jquery mobile - Reverse Geocoding issue
我有一個頁面可以獲取您當前的經度/緯度位置,提交該頁面時,它會轉到一個頁面,該頁面使用標記在Google地圖上顯示該位置。 如果單擊它,將彈出一個帶有靜態字符串的氣球:
(我目前正在顯示lat / lng值)
var infowindow = new google.maps.InfoWindow({
content: '<p>' + lat + ',' + lng + '</p>'
});
所以,我有價值觀,但是當我嘗試和運行latlng
通過可變geocoder.geocode({'latLng': latlng}...
。它只是打破,並且不顯示任何東西,但在地圖此外,它並不會自動獲取登錄頁面上的當前位置。
您可以在這里看到它: 代碼示例
這是我第一次嘗試進行地理編碼,因此我不確定自己做錯了什么。
我使用此頁面作為參考: https : //developers.google.com/maps/documentation/javascript/geocoding
Michael的答案是正確的,但是我更喜歡使用parseFloat() ,該函數專門用於將字符串"1.234"
轉換為浮點數(例如1.234
var lat = parseFloat($("#lat").val());
var lng = parseFloat($("#lng").val());
var latlng = new google.maps.LatLng( lat, lng );
問題出在以下代碼中:
var lat = $("#lat").val();
var lng = $("#lng").val();
var latlng = new google.maps.LatLng( lat, lng );
您正在將兩個文本字段的值提取到lat
和lng
變量中,但它們是string 。 您需要將它們改為數字。 一種簡單的轉換方法是使用一元+
運算符:
var lat = +$("#lat").val();
var lng = +$("#lng").val();
var latlng = new google.maps.LatLng( lat, lng );
進行此更改后,您的地圖將按預期工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.