2012-08-10 24 views
0

我是MVC的新手,並且擁有MVC 4 Web應用程序,並檢索應用程序啓動(靜態引用數據)中的項目集合。我想在我的視圖加載和循環時通過它創建視圖上的鏈接來顯示這個項目的集合,我想用javascript來注入這些信息。我發現一篇文章,他們提到在這樣的視圖做直接在視圖中注入/插入值MVC 4

​​

但我正在尋找一個實施此方法的工作示例。任何指導將不勝感激。

回答

1

您應該將您的收藏序列化爲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> 
+0

感謝查理這就是我一直在尋找 – user329540 2012-08-17 12:24:08

+0

請記住我的答案,因爲接受:) – Charlie 2012-08-17 13:00:13

+0

@Charlie:你有沒有做什麼特別讓MVC 4接受舊的MVC語法?我的例子中出現編譯錯誤。 – 2013-05-28 12:58:34