0

我是 MVC 新手,有一个 MVC 4 Web 应用程序,我在应用程序启动中检索项目集合(静态参考数据)。我想在我的视图加载并循环通过它在视图上创建链接时显示这个项目集合,我想使用 javascript 来注入这些信息。我发现了一个帖子,他们提到在这样的视图中这样做

<script type="text/javascript> 
 <%= Model.JavascriptToInsert %> 
</script>

但我正在寻找实施这种方法的工作示例。任何指导将不胜感激。

4

1 回答 1

2

在将集合放入页面之前,您应该将集合序列化为 json。

使用 ViewBag 显示数据

控制器:

    //Show data with ViewBag
    public ActionResult Index()
    {
        ViewBag.DataList = SomeClass.SomeStaticList;
        return View();
    }

看法:

<script type="text/javascript">
    var list = <%=Json.Encode(ViewBag.DataList)%>;

    for (var i = 0; i < list.length; i++) {
        //do something with your data
    }
</script>

使用强类型视图

控制器:

    //Show data with ViewModel
    public ActionResult Index()
    {
        var model = new TempProject.Models.SampleModel();
        model.ListData = SomeClass.SomeStaticList;
        return View(model);
    }

看法:

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<TempProject.Models.SampleModel>" %>

<script type="text/javascript">
    var list = <%=Json.Encode(Model.ListData) %>;

    for (var i = 0; i < list.length; i++) {
        //do something with your data
    }
</script>
于 2012-08-10T07:44:06.047 回答