我有 3 张桌子:
TableMaster <-- TableDetails1(一对多关系)
TableMaster <-- TableDetails2
如何使用 ASP.NET MVC 3 Razor 在单个页面上实现这一点?
我想我应该对每个表单使用多表单和验证,但我不知道该怎么做。
我有 3 张桌子:
TableMaster <-- TableDetails1(一对多关系)
TableMaster <-- TableDetails2
如何使用 ASP.NET MVC 3 Razor 在单个页面上实现这一点?
我想我应该对每个表单使用多表单和验证,但我不知道该怎么做。
您不需要多个表格。对不起,如果我误解了你的问题
@model TableMaster
@using (Html.BeginForm())
{
@Html.TextBoxFor(model => model.Name)
@foreach(int i = 0; i < Model.TableDetails1.Count; i++)
{
@Html.TextBoxFor(model => Model.TableDetails1[i].Name)
}
}
你能更具体一点吗?
如果您只是收集数据,并且整个表单只提交一次,请使用这样的模型:
public class MyBigForm
{
public MyForm1 Form1 { get; set; }
public MyForm2 Form2 { get; set; }
public MyForm3 Form3 { get; set; }
}
每个类(MyForm1-3)都可以有自己的验证。
但是,如果您使用 Ajax 或其他东西来加载详细表单,那么在 MVC 中不可能一次验证所有表单。然后,您必须将自定义 jquery 验证写入 ajax 响应(接收数据后),然后写入 Controller。