ASP.NET MVC 3从Google Map中保存lat和long

时间:2012-10-02 15:25:00

标签: asp.net-mvc-3 google-maps

我的观点上有Google地图。

我希望保存刚刚添加到地图中的标记的长度和纬度。 我的ViewModel有一个Location对象,其中包含lat和long。

有谁知道我怎么做到这一点?

以下是代码:

function addMarker(location, isdragable) {
    marker = new google.maps.Marker({
    position: location,
    map: _gmMap,
    icon: '../../Content/images/pin-red_32.png',
    draggable: isdragable
    });
$('#mainPlaceHolder_hdnlatlong').val(location.lat() + ',' + location.lng());
markersArray.push(marker);
if (isdragable) {
    google.maps.event.addListener(marker, 'dragend', function () {
    showLocation(marker.getPosition().lat() + ',' + marker.getPosition().lng(), true);
    });
}
$('#spmsg').hide();
}

1 个答案:

答案 0 :(得分:3)

假设服务器上应该发生“保存”,您需要向服务器发出请求。一种方法是使用jQuery的ajax方法:

客户端javascript(替换< ...>以满足您的需求):

function saveLocation()
{
    $.ajax({
        type: "post",
        url: "<Controller>/<Action>",
        data: <serializable form of your Location values>,
        dataType: "json",
        success: <callback>
    });
}