Google マップに複数のマーカーを追加しようとしています。私は .NET MVC 4 を使用しており、すべての座標を含む配列を使用して ViewModel を View に渡しています。これらすべてを Google マップに表示したいと考えています。配列は、ViewModel では latLngCoordinates という名前です。
@model Project.Web.ViewModels.ParkingViewModel
うまくいかないコード:
for (var i = 0; i < @Model.latLngCoordinates.Length; i++) {
addMarker(@Model.latLngCoordinates[i]);
}
エラー: 名前 'i' は現在のコンテキストに存在しません。
このコードは正常に動作しています:
<script type="text/javascript"
src="http://maps.googleapis.com/maps/api/js?sensor=false">
</script>
<script type="text/javascript">
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(51.92479, 4.469833),
zoom: 14,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map"),
mapOptions);
for (var i = 0; i < @Model.latLngCoordinates.Length; i++) {
addMarker(51.918769, 4.480616);
}
function addMarker(x, y) {
var location = new google.maps.LatLng(x, y);
var marker = new google.maps.Marker({
position: location,
map: map,
});
}
} google.maps.event.addDomListener(window, 'load', initialize);
</script>
私が使用する場合:
addMarker(@Model.latLngCoordinates[1])
またはそれが機能する97までの他の値..