2

背景:我有 2 个实体,课程和模块。一门课程可以有很多模块。在您更新/添加模块的页面上,它基本上是课程的更新页面,其中每个模块都有一个以手风琴形式呈现的部分页面。看截图:

在此处输入图像描述

我有这个来填充现有的模块:

@foreach (var module in Model.Modules)
{
    Html.RenderPartial("~/Views/Module/_Update.cshtml", (RocketLabs.Models.Module)module);
}

每次单击“添加模块”时,如何添加部分渲染(带有新模型)?

任何建议将不胜感激。谢谢!

4

1 回答 1

3

我建议您查看Editing a Variable Length ListSteven Sanderson 的文章,他在其中说明了如何使用 AJAX 请求到服务器端部分来动态添加新行。这里的想法是订阅 Add 按钮的 click 事件并触发 AJAX 请求到控制器操作,该操作将返回一个包含要编辑的空白行的新部分。

如果你想要一个纯粹的客户端解决方案,他还写an article了可以使用 knockoutjs 实现相同的地方,例如,无需任何 AJAX 请求即可将新条目添加到列表中。

于 2013-03-10T09:30:14.490 回答