我有一個谷歌地圖,用戶可以點擊地圖插入帶有信息窗口形式的標記,以便他們可以編輯數據並將其保存到數據庫。它類似於此:將谷歌地圖可拖動標記的lat&lng更新傳遞到另一頁
http://code.google.com/apis/maps/articles/phpsqlinfo_v3.html
,但我做了我的標記爲可拖動。如何將更新的經緯度傳遞給另一個PHP頁面以更新數據庫?
目前,我這樣做:
function updateMarkerPosition(latLng)
{
document.getElementById('add_lat').value = latLng.lat();
document.getElementById('add_lng').value = latLng.lng();
}
function add_editable_mkr()
{
google.maps.event.addListener(map, 'click', function(event)
{
var marker_drag = new google.maps.Marker(
{
position: event.latLng,
draggable:true,
map: map,
icon: icon2
});
// Infowindow form
var html = '<div>'+
'<form name="add_data" action="phpinsert.php">'+
'<input type="text" name="add_lat" value=""/>'+
'<input type="text" name="add_lng" value=""/>'+
'</form>'+
'</div>';
var popup_form = new google.maps.InfoWindow
({
maxWidth:800
});
google.maps.event.addListener(marker_drag, "click", function()
{
popup_form.setContent(html);
popup_form.open(map, marker_drag);
});
google.maps.event.addListener(marker_drag, 'drag', function()
{
updateMarkerPosition(marker_drag.getPosition());
});
});
}
function initialize()
{
map = new google.maps.Map(document.getElementById("map"),
{
center: new google.maps.LatLng(1.364236,103.796082),
zoom: 4,
mapTypeId: google.maps.MapTypeId.ROADMAP,
mapTypeControl: true,
mapTypeControlOptions:
{
style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR
},
navigationControl: true,
navigationControlOptions:
{
style: google.maps.NavigationControlStyle.LARGE
}
});
add_editable_mkr();
}
但值被傳遞到我的其他頁面作爲空值。有沒有其他方法可以做到這一點?
在此先感謝!
我試過放入ID但它不起作用。我想知道是否因爲我這樣創建了HTML表單,所以我無法通過getElementbyID更新該表單的實例? 我一直在想通過其他方式通過更新的緯度/經度到我的其他頁面,但無法找到任何 – user1224015 2012-02-23 08:15:33