0
我的項目中有一個關於谷歌地圖的問題。當我使用ajax調用來顯示地圖時,它沒有出現。當我不使用ajax時,它正常工作。我不知道Map加載中是否存在同步問題。 請任何幫助。這是我的代碼的一部分:在Asp.net中使用ajax調用顯示google地圖
Ajax調用:
<script type="text/javascript">
$("#ModifPlanRoute").dialog("close");
$.ajax({
url: '/Agent/displayMAP/',
type: 'GET',
success: function (result) {
$('#ListeAgent2').html(result);
}
});
</script>
看法,我想顯示的地圖:
@model IEnumerable<PFE.Models.ptVente>
@{
ViewBag.Title = "MapPtVente";
}
<script type="text/javascript">
var waypoints = [];
</script>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
@foreach (var item in Model){
<script type="text/javascript">
var lat = '@Html.DisplayFor(modelItem => item.latitude)'.replace(",", ".");
var lng = '@Html.DisplayFor(modelItem => item.longitude)'.replace(",", ".");
stop = new google.maps.LatLng(lat, lng);
waypoints.push({
location: stop,
stopover: true
});
</script>
}
<script type="text/javascript">
var map;
var directionDisplay;
var directionsService = new google.maps.DirectionsService();
function initialize() {
directionsDisplay = new google.maps.DirectionsRenderer();
var latlng = new google.maps.LatLng(36.68447108872107, 10.181236267089844);
var myOptions = {
zoom: 8,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("map2"),
myOptions);
directionsDisplay.setMap(map);
var origin = new google.maps.LatLng(36.85142615835436, 10.147939324378967);
var destination = new google.maps.LatLng(36.85142615835436, 10.147939324378967);
var request = {
origin: origin,
destination: destination,
waypoints: waypoints,
travelMode: google.maps.DirectionsTravelMode.DRIVING,
optimizeWaypoints: true,
avoidHighways: true,
avoidTolls: true
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(response);
}
});
}
google.maps.event.addDomListener(window, "load", initialize);
</script>
<div id="map2" style="width:500px;height:500px;"></div>