我已经创建了一个数组,并将其传递给ViewBag查看。
ViewBag.MarkerList = Utility.markerList;
我有一个功能可以在JavaScript中的地图上添加标记:
function myFunction(item) {
var marker = L.marker([item.lat, item.lng], { riseOnHover: true }).addTo(mymap);
marker.bindPopup("I am a popup.<br>"+ item.lat + "," + item.lng);
}
var array = @ViewBag.MarkerList;
array.foreach(myFunction);
如何在ViewBag中使用foreach并调用JavaScript函数?
答案 0 :(得分:0)
您可以在页面加载时在方法和调用方法中将JavaScript的c#数组转换为json。
function myFunction() {
var markerList= @Html.Raw(Json.Serialize(ViewBag.MarkerList));
for(item in markerList) {
var marker = L.marker([item.lat, item.lng], { riseOnHover: true}).addTo(mymap);
marker.bindPopup("I am a popup.<br>"+ item.lat + "," + item.lng);
}
}