【发布时间】:2011-10-31 17:47:46
【问题描述】:
我有一个基本表格
@Html.ValidationSummary(true)
using (Html.BeginForm("Index", "Home", FormMethod.Post, new { @class = "form" }))
{
<div class="editor-label">
<label for="Name">@Html.LabelFor(model => model.Name)</label>
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Name)
</div>
等等。我的模型正在使用数据注释并且验证已打开。
我正在使用一些 jquery 劫持表单:
<script type="text/javascript">
$("form[action='/']").submit(function () {
$.post($(this).attr("action"), $(this).serialize(), function (response) {
$("#contactForm").replaceWith($("#contactForm", response));
});
return false;
});
</script>
如果我正确输入字段并提交,这将有效。但奇怪的是,如果我在其中一个表单字段中输入了一个无效值,并且验证代码会启动以突出我的错误,那么我在上面的 hijaxing 脚本中附加的提交事件函数就会丢失,并且会发生完整的帖子。
关于如何解决这个问题有什么好的想法吗?
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-3 jquery unobtrusive-validation