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 に答える