2012-05-04 124 views
3

我有一个带有List对象的List集合的Model对象。我需要将子对象的表单字段加载到页面,并提供一个链接来为第二个对象动态添加表单字段。换句话说,可以通过一个表单和一个表单后创建多个子对象。通过Ajax动态加载EditorFor模板

我的第一个想法只是将表单字段放入局部视图中,并通过Ajax.ActionLink加载视图。这很有效,但是当试图唯一标识集合中的每个对象并在回发时绑定对象集合时,问题就出现了。为此,看起来正确的用法是使用@ Html.EditorFor()帮助器,但我不知道如何通过Ajax调用它,以便在单击链接时动态地将对象的编辑器模板添加到页面中。

回答

0

这听起来像是你在正确的轨道关于局部视图,你只需要清理输入的名称属性,以便正确绑定到一组对象。

看看this文章Phil Haack解释了如何绑定到列表的工作,或谷歌的更新与剃刀语法的更新。

+0

是的你是对的。我最终使用了部分视图和Phil Haack在[此技术]中发布的技术组合(http://blog.stevensanderson.com/2010/01/28/editing-a-variable-length-list-aspnet -mvc-2-style /)为我的列表项目编制索引并跟踪插入和删除操作。 –