我如何在javascript mvc中循环一个viewbag的地址列表

时间:2017-09-16 21:37:00

标签: c#

在我的控制器上我有一个地址列表,我想传递给视图,所以我有一个只处理一个记录但不遍历每个记录的愚蠢代码

<script>
    function initMap() {

        var uluru = { lat: @ViewBag.Latitude, lng: @ViewBag.Longitude };
    //var uluru = {lat: -25.363, lng: 131.044};
    var map = new google.maps.Map(document.getElementById('map'), {
        center: uluru,
        // Set mapTypeId to SATELLITE in order
        // to activate satellite imagery.
        mapTypeId: 'satellite',
        zoom: 8
    });
    var marker = new google.maps.Marker({
      position: uluru,
      map: map
    });
  }
</script>

1 个答案:

答案 0 :(得分:0)

假设您已将一个列表分配给ViewBag

ViewBag.Addresses = new List<Address>() { ... };

一种方法是使用for循环推入JavaScript数组。

<script>
    var coordinates = [];

@for(int i = 0; i < ViewBag.Addresses.Count(); i++)
{
    <text>
    coordinates.push({lat: @ViewBag.Addresses[i].Latitude, lng: @ViewBag.Addresses[i].Longitude });
    </text>
}

   var map ...
</script>