我有一个 MVC 3 项目,它有一个简单的表单,包含在 PartialView 中:(表单位于<div id="form"> </div>
加载此部分视图的“”中
@using (Ajax.BeginForm("Submit", "Form", new AjaxOptions
{
HttpMethod = "POST",
UpdateTargetId = "form"
}))
{ .... }
我的控制器是:
[HttpPost]
public PartialViewResult Submit(FormElement form)
{
....
return PartialView("_RequestFormSubmitted");
}
我遇到的问题是,当我提交表单时,我被定向到查看结果 URL (/Form/Submit/),而不是停留在当前页面上,并返回部分视图。
我错过了一些非常明显的东西吗?我可能会错过脚本参考吗?
我在页面末尾包含以下脚本:
<script src="@Url.Content("~/Scripts/jquery-1.7.2.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
编辑:
我的表单现在在 HTML 中呈现如下
<form action="/Form/Submit" data-ajax="true" data-ajax-method="Post" data-ajax-mode="replace" data-ajax-update="#form" id="form0" method="post"> <hgroup>
<h6 class="icon"><img src="/Content/img/icon/dining.png"> YOUR<br>DINING<br>REQUEST</h6>
</hgroup>
<ul>
<li class="field type-select">
<label for="Name">Your name</label>
<input class="text-box single-line" data-val="true" data-val-required="The Your name field is required." id="Name" name="Name" type="text" value="">
<span class="field-validation-valid" data-valmsg-for="Name" data-valmsg-replace="true"></span>
</li>
<li>
<input type="submit" value="Submit">
</li>
</ul>