1
我希望我的用戶能夠在地圖上選擇一個地方,並返回可以上傳到數據庫的緯度和經度。任何幫助,將不勝感激從谷歌地圖獲取經緯度
我希望我的用戶能夠在地圖上選擇一個地方,並返回可以上傳到數據庫的緯度和經度。任何幫助,將不勝感激從谷歌地圖獲取經緯度
因爲你正在處理Google Maps API(基於你的問題的標籤),我想利用JavaScript中的內置API功能可能會有所幫助。您可以轉到this place開始學習JavaScript,然後您會閱讀the API here,最終將能夠使用JavaScript自動設置其值已經被JavaScript自動設置的用戶的經度和緯度點擊地圖。
這裏有一點你可能要做些什麼,但你可能需要學習一些JavaScript來擴展它還是有效地使用它:所以
var map = new GMap2(document.getElementById("map_canvas"));
map.setCenter(new GLatLng(37.4419, -122.1419), 13);
GEvent.addListener(map,"click", function(overlay, latlng) {
if (latlng) {
alert("Latitude : " + latlng.lat() + " , Longitude: " + latlng.lng());
}
});
,假設你創建一個簡單的HTML頁面用形式持有這樣的緯度和經度:
<form action="some_server_side_script_or_path" method="POST" id="map_form">
<!-- display the map -->
<div id="map_canvas"></div>
<label for="mlatitude">Male</label>
<input type="text" name="mlatitude" id="mlatitude" readonly="readonly"/>
<br />
<label for="mlongitude">Male</label>
<input type="text" name="mlongitude" id="mlongitude" readonly="readonly"/>
<br />
<input type="submit" value="Submit Location" />
</form>
然後,通過modfying我們的Clik處理這樣,我們就可以自動設置窗體上的經度和緯度,然後讓用戶只需點擊提交將值發佈到服務器。
GEvent.addListener(map,"click", function(overlay, latlng) {
if (latlng) {
var lat = document.getElementById("mlatitude");
var lng = document.getElementById("mlongitude");
lat.value = latlng.lat();
lng.value = latlng.lng();
//at this point, you can even use Javascript to auto-submit the form using
//document.forms["map_form"].submit();
}
});
你喜歡什麼語言? – Sudantha 2011-04-24 12:06:57
的PHP和HTML?可能是我最好的,但我不是很好在他們 – James 2011-04-24 12:10:20
可能重複的[谷歌地圖V3 - 用標記數據填充文本字段?](http://stackoverflow.com/questions/4533303/google-maps-v3-populate-text-字段與標記數據) – ifaour 2011-04-24 12:59:13