我有一個遞歸模型這樣創建表單好,我的樹渲染,但我需要在樹的每一行添加一個文本框,我想輸入這樣的名稱:從遞歸模型
Childs[0].Childs[1].Childs[2].Text
所以我的模型綁定將按預期工作。
有沒有通過使用EditorTemplates或其他任何方式來實現這一目標?
我想避免在表單提交中在javascript中建立輸入名稱。
我有一個遞歸模型這樣創建表單好,我的樹渲染,但我需要在樹的每一行添加一個文本框,我想輸入這樣的名稱:從遞歸模型
Childs[0].Childs[1].Childs[2].Text
所以我的模型綁定將按預期工作。
有沒有通過使用EditorTemplates或其他任何方式來實現這一目標?
我想避免在表單提交中在javascript中建立輸入名稱。
您可以使用尊重當前導航上下文而非@helper
的編輯器模板。
所以定義自定義編輯模板爲Node
型(~/Views/Shared/EditorTemplates/Node.cshtml
):
@model Node
<li>
@Html.LabelFor(x => x.Text)
@Html.EditorFor(x => x.Text)
@if (Model.Childs.Any())
{
<ul>
@Html.EditorFor(x => x.Childs)
</ul>
}
</li>
,然後裏面的一些主要觀點:
@model MyViewModel
<ul>
@Html.EditorFor(x => x.Menu)
</ul>
其中Menu
財產顯然是Node
型。
您是否嘗試過使用模板? –