【发布时间】:2012-12-08 05:31:07
【问题描述】:
我有以下数据模型
public class User
{
[Required(ErrorMessage = "First name required!")]
public string FirstName { get; set; }
[Required(ErrorMessage = "Last name required!")]
public string LastName { get; set; }
}
我有以下使用上述模型的名为“UserForm”的视图
@model User
@using (Html.BeginForm("myAction", "MyController"))
{
@Html.TextBoxFor(model => model.FirstName)
@Html.TextBoxFor(model => model.LastName)
@Html.ValidationSummary()
<input type="submit" value="Save" />
}
我已经测试了上面的代码,并且不显眼的验证和表单帖子可以正常工作并且没有任何问题。但是,如果我将上述视图作为部分视图包含在如下所示的第二个视图中,则客户端不显眼的验证将停止工作。
<div id="myPartialView">
<!-- Include form as partial view -->
@{Html.RenderAction("myAction", "MyController");}
</div>
我尝试使用以下 javascript 行显式重新加载不显眼的验证
jQuery.validator.unobtrusive.parse('#myPartialView');
现在验证正在运行,但我无法提交表单。我使用了提琴手,我可以看到点击提交按钮不会触发任何活动。有什么想法我可能做错了吗?
【问题讨论】:
-
您是否尝试使用@Html.Partial("UserForm", yourUserModel) 来包含表单?
-
Mate - 我根据您的建议尝试了@Html.Partial,但我看到了同样的问题。单击表单提交时没有客户端验证并且没有活动
-
您可以添加部分 HTML 渲染吗?我尝试了一个你的例子,它有效。也许会有所帮助stackoverflow.com/questions/4406291/…
-
@Mate - 感谢您的帮助!问题出在我身上,而不是部分观点。我已经在下面发布了我的答案。
标签: c# razor asp.net-mvc-4 partial-views unobtrusive-validation