のcontrolerアクションコードにgoogle.maps.LatLng(緯度、経度)で緯度と経度MVC 4
[HttpGet]
public JsonResult findlatlon()
{
Models.Vehicle_Tracking_SystemEntities entities = new Vehicle_Tracking_SystemEntities();
var latlon = entities.LatLangs.ToList();
return Json(new { AddressResult = latlon }, JsonRequestBehavior.AllowGet);
}
findlatlon.cshtmlビューコード
{ ViewBag.Title = "findlatlon"; }
<script src="~/Scripts/jquery-1.8.2.js"></script>
<script src="~/Scripts/jquery-1.8.2.min.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.js"></script>
<script src="http://maps.googleapis.com/maps/api/js?key=AIzaSyCM7G5ruvunb0K7qxm6jb1TssJUwROqs-g" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
var myMarkers = [];
$.ajax({
async: false,
type: "POST",
dataType: "json",
url: '@Url.Action("findlatlon", "Home")',
data: '{}',
success: function(result) {
//get address from controller action.....
myMarkers = result.AddressResult;
}
});
//init google map
function googleMap() {
//alert("Hellooooooo");//alert
var mapOptions = {
center: new google.maps.LatLng(myMarkers[0].Latitude, myMarkers[0].Langitude),
zoom: 2,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
//alert(myMarkers[0].Latitude);//alert
var infoWindow = new google.maps.InfoWindow();
var map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
for (i = 0; i < myMarkers.length; i++) {
data = myMarkers[i];
var marker = new google.maps.Marker({
position: new google.maps.LatLng(data.Latitude, data.Langitude),
map: map
});
(function(marker, data) {
google.maps.event.addListener(marker, "click", function(e) {
infoWindow.setContent(data.Location_Adress);
infoWindow.open(map, marker);
});
})(marker, data);
}
}
//....
google.maps.event.addDomListener(window, 'load', googleMap);
})
</script>
<div id="map_canvas" style="border-top: none; width: 100%; margin-top: -1px;
height: 250px; background-color: #FAFAFA; margin-top: 0px;">
</div>
{"AddressResult":[{"Id":1、 "Latitude": "33.9982"、 "La ngitude ":" 71.4999" 、 "住所": "ペシャワール"、 "画像":ヌル、 "タイトル": "ペシャワール"}]}だからここ
AJAXは、コントローラおよびコントローラを呼び出す経度を取得し、上記の出力のように表示するにはjsonの文字列で返します。
しかし、ここで私はJSONで返す緯度と経度の値が
センターに割り当てるであることを望んでいる:new google.maps.LatLng(myMarkers[0].Latitude, myMarkers[0].Langitude)
そして、私はここで緯度とロング
エラーを取り消せますか? –
あなたはエラーはありません、必要なGoogleマップは私には表示されませんが、私は私にGoogle Mapsを返すjson値に応じてビューに表示するが、ここではjsonの文字列が私に表示されます{ "AddressResult":["Id":1、 "Latitude": "33.9982"、 "Langitude": "71.4999"、 "Address": "Peshawar"、 "Image":null、 "Title": "Peshawar"} ]} –
はい、あなたはJson文字列を見たところで、Json文字列を表示するいくつかの固定 –