在Scotts博客
post中,他描述了如何将一组对象发布到控制器.
我的问题如何最好地为此生成一个View,允许用户动态添加更多数组项?
如果我写
foreach(MyModel item in Model) { <p>@Html.TextBoxFor(m => item.Name)</p> }
并让控制器在每次生成< input type =“text”name =“item.Name”/>时向数组添加一个新项目.缺少1数组索引.
如果我手动编码< input>然后它工作但我失去了所有的客户端验证属性,如data-val-required =“Name is required”
我想要做的是让用户动态地向阵列添加新项目并仍然保持不引人注目的验证?这是最好的做法是什么?
我想我自己用jQuery编写了它,但如果是这样我可以保持验证吗?
更新
看起来像Tassadaque的答案是一个很好的.NET解决方案,但看起来像很多服务器端代码来做一些非常容易的事情.
Muhammad Adeel Zahi的答案还可以,但仍然错过了客户端验证.
我想我最终只会手动编写自己的客户端HTML并使用jQuery live和validation插件.因此,我可以进行所有自己的验证,并在不调用服务器的情况下添加和删除所有客户端的新项目.