Я работаю с API Карт Google. У меня есть отображение карты на моей странице, я могу добавить маркеры в нее вручную, все работает правильно.
Теперь мне нужно создать список маркеров из mvc и выяснить, как передать его обратно на карту через asp.net MVC. Все, что мне нужно для списка маркеров, содержится в файле dtDealer_List, показанном ниже.
foreach (DataRow row in dtDealer_List.Rows)
{
dealer_list dl = new dealer_list();
dl.address = row["address"].ToString();
.......
lstDealer_List.Add(dl);
}
Я не уверен, как передать этот список обратно в функцию javascript.
function init_map(map_canvas_id, lat, lng, zoomLevel) {
var myLatLng = new google.maps.LatLng(lat, lng);
var options = {
zoom: zoomLevel,
center: myLatLng,
mapTypeId: google.maps.MapTypeId.HYBRID
};
var map_canvas = document.getElementById(map_canvas_id);
var map = new google.maps.Map(map_canvas, options);
}
Мне нужно вытащить dtDealer_List в ajax-вызов или что-то еще?
добавьте небольшой скрипт в верхней части страницы, чтобы настроить массив javascript из вашего списка:
@model List<string>
<script>
var addresses = [];
@foreach (var address in Model)
{
<text>addresses.push('@address')</text>
}
console.log(addresses);
</script>
то вы должны иметь возможность получить доступ addresses
массиву глобальных addresses
где вам нужно
dtDealer_List
при загрузке страницы? Если это так, вы можете просто использовать его в качестве модели или отправить в ViewBag. Если нет, вам нужно использовать AJAX