【发布时间】:2011-12-24 06:10:29
【问题描述】:
我正在使用 asp.net MVC3 和客户端验证来帮助验证我的表单。这工作得很好,但是我遇到了一个不寻常的情况。我的部分表单(准确地说是 2 个输入)是从局部视图加载的。这些字段有自己的验证规则(例如“必需”)并按预期工作。嗯,差不多。奇怪的是,一旦在页面加载时“请求”部分视图,规则似乎就会运行。所以我将有大约 20 个表单字段左右;其中 2 个(从部分视图)说明“此字段是必需的”。
这是我调用局部视图的父页面:
@Html.Action("Index", "Foo", @Model.Foo)
在我的局部视图模型中设置属性:
[Required(ErrorMessage = "This is required.")]
public string foo { get; set; }
在我的局部视图的视图中显示输入和验证:
@Html.LabelFor(m => m.test, "Test")
@Html.TextBoxFor(m => m.test)
@Html.ValidationMessageFor(m => m.test)
从其控制器调用局部视图:
public ActionResult Index(Foo myModel)
{
return PartialView("_PartialView", myModel);
}
有人知道是什么原因造成的吗?如果没有,有什么方法可以调试此验证以了解发生了什么?
【问题讨论】:
-
感谢@ashkan-mobayen-khiabani 的提示,我已经用我认为相关的代码更新了我的帖子。
标签: jquery asp.net asp.net-mvc asp.net-mvc-3 unobtrusive-validation