Как передать строку JSON из действия Controller в View и загрузить в качестве параметра для функции JQuery

0
$(document).ready(function () {

        function mapInit(data) {
            var map;

            alert(data);

            map = new L.Map('map', { zoom: 8, layers: [OSM] });

            var arr = $.parseJSON(data);
            alert(arr);
        }

        mapInit('@Html.Raw(Json.Encode(Model))');

    });

В действии контроллера возвращается строка json, созданная вручную, которую мне нужно передать в представление функции jQuery для отображения карты.

Однако, когда строка передается как модель, она теряет свое форматирование по строке, но не завершена.

Теги:
asp.net-mvc-3

1 ответ

1
Лучший ответ

Укажите представление, чтобы принять string в качестве модели, а затем передать ее в результат View(). например

@model String

Вставить в верхней части окна, затем:

return View(tt);

В рамках акции.

Затем в представлении дамп этой строки, чтобы JavaScript продолжал:

@* ... *@
mapInit('@Html.Raw(Model)')
@* ... *@

Хотя вы, вероятно, должны создать модель, заселите ее в контроллере, отпустите ее, чтобы просмотреть, затем используйте что-то вроде библиотеки Newtonsoft JSON и выведите ее на страницу.

  • 0
    Брэд Я изменил строку возврата View (tt), чтобы вернуть View ((object) tt), так как это выдавало ошибку. Это все еще не рендеринг карты. Есть ли другой способ сделать это.
  • 0
    Посмотрите на источник отображаемой страницы - выглядит ли он правильно (синтаксически)?
Показать ещё 5 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню