在View中访问Controller返回的JSON

时间:2013-04-06 10:17:00

标签: jquery json asp.net-mvc-3

我正在尝试将我的linq序列化为JSON。 我的问题是 Json result wrapped in pre tag - how to get value of it。答案不是我想要的。 这是我的代码 的控制器

return Json(regionBoudaries, JsonRequestBehavior.AllowGet);

我看到我的JSON字符串写在页面中 现在我正在写类似

之类的东西

查看

$(document).ready(function () {        
    initialize(); 
    process(a_variable);
}

如何设置a_variable从控制器返回的JSon的值。 请帮帮我。提前谢谢

1 个答案:

答案 0 :(得分:1)

您可以使用视图模型:

public class MyViewModel
{
    public class SomeType RegionBoudaries { get; set; }

    ... some other properties
}

然后让服务于此视图的控制器操作填充视图模型的属性:

public ActionResult SomeAction()
{
    var model = new MyViewModel();
    model.RegionBoudaries = ... same stuff as in your other action
    return View(model);
}

然后在相应的强类型视图中:

@model MyViewModel
...
<script type="text/javascript">
    $(document).ready(function () {        
        var a_variable = @Html.Raw(Json.Encode(Model.RegionBoudaries));
        initialize(); 
        process(a_variable);
    });
</script>