簡體   English   中英

在EditorTemplates中保持計數

[英]Keeping count within EditorTemplates

使用EditorTemplates(With Lists)計算當前列表索引值是否有辦法? 例如,在此編輯器模板中

@model myModel

<div class="email-box">
    @Html.TextBoxFor(x=>x.Email)
</div>

我可以找出列表中的索引嗎?

EDIt ====

視圖

 @model IEnumerable<myModel>

 @Html.EditorForModel()

編輯模板

@model myModel
<div class="email-box" rel="@ViewBag.Index">
    @Html.TextBoxFor(x => x.Email)
</div>

從Html擴展方法調用時,自定義編輯器模板可以接受值,這些值將專門添加到ViewBag 您可以使用它將元素的索引發送到該視圖

在父視圖中

@{
    ViewBag.Title = "MyView";
    var index = 0;
}

<h2>My View</h2>

@foreach (var item in Model)
{
    <div>
        @Html.EditorFor(m => item, new { Index = index++ })
    </div>
}

在編輯器模板中

@Html.TextBoxFor(m => string.Format("({0} - {1}", ViewBag.Index, m.Description)

我實際上在查看可用的字段選項時解決了這個問題。

ViewData.TemplateInfo.HtmlFieldPrefix

返回[0],[1]等。可以減少它,我們有ID。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM