0

我已经阅读了这篇文章,它展示了如何通过使用编辑器模板来显示动态字段http://coding-in.net/asp-net-mvc-3-how-to-use-editortemplates/

如何通过单击“添加字段”按钮创建新字段?

我已经用谷歌搜索了这个并查看了一些示例,但对于应该是一个简单的过程来说,它们似乎太复杂了。在 PHP 中,您只需附加[]到字段名称的末尾,然后您就可以通过循环运行它...

在 MVC 中应该有一种更简单的方法来做到这一点,因为它是较新的技术,对吧?

4

1 回答 1

4

动态表单字段可以很容易地完成,如下所示:

模型:

public class MyViewModel
{
    public string Name { get; set; }
    public List<string> EmailAddresses { get; set; }
}

看法:

@model MyViewModel

@Html.TextboxFor(m => m.Name)

@* you can add as many of these as you like, or add them via javascript *@
<input type="text" name="EmailAddresses" />
<input type="text" name="EmailAddresses" />
<input type="text" name="EmailAddresses" />
@* you can also use razor syntax *@
@Html.Textbox("EmailAddresses")

控制器:

[HttpPost]
public ActionResult MyAction(MyViewModel model)
{
    // note that model.EmailAddresses contains your list of email addresses
    foreach (string email in model.EmailAddresses)
        email = email; // do whatever you want with this...

    return View();
}
于 2015-08-25T12:06:05.573 回答