gpt4 book ai didi

asp.net-mvc-3 - 在 MVC 3 中使用编辑器模板和 EditorFor 时动态添加行

转载 作者:行者123 更新时间:2023-12-04 05:43:01 26 4
gpt4 key购买 nike

扩展在 a previous question ,我正在使用 EditorFor 编辑类型的对象列表(假设)Hobby .

现在,我需要实现为个人 Hobby 添加编辑器的功能对象,以便用户可以添加额外的爱好。

我读了 Steven Anderson's blog关于如何在 MVC 2 中做到这一点。但是,他使用循环和 RenderPartial 而不是使用 EditorFor 来渲染各个 Hobby 实例。我理解他通过 Ajax 调用呈现另一个局部 View 并将 View 结果插入到 DOM 中的方法,但不知道如何在我的情况下使用 EditorFor 应用 Ajax 添加。

他的代码:

<% foreach (var item in Model)
Html.RenderPartial("GiftEditorRow", item);
%>

我的代码使用 EditorFor 是这样的:
// Model is a List<Hobby>
@Html.EditorFor(model => model.AllowedSurveys)

考虑到编辑器是作为编辑器模板而不是部分 View 实现的,我该如何添加额外的爱好编辑器?

最佳答案

你可以用部分替换你的编辑器模板:

@foreach (var item in Model.AllowedSurveys)
{
Html.RenderPartial("_Hobby", item);
}

和部分内部( ~/Views/controllerName/_Hobby.cshtml ):
@model Hobby
<div class="editorRow">
@using(Html.BeginCollectionItem("AllowedSurveys"))
{
@Html.EditorFor(x => x.Name)
...
}
</div>
Html.BeginCollectionItem自定义助手用于生成带有 Guid 的名称,并允许使用 javascript 重新排序和添加新项目到集合中。您可以从 updated article 下载它.您正在阅读的那个是针对 ASP.NET MVC 1 的,已经过时了。

关于asp.net-mvc-3 - 在 MVC 3 中使用编辑器模板和 EditorFor 时动态添加行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11024126/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com