1

我有一个 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>

4

2 回答 2

2

对,解决了:我没有包括

<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>

(但是我有“非 ajax 的!”)

无论如何感谢大家的帮助!

于 2012-07-09T11:18:42.233 回答
1

你需要使用

new AjaxOptions { InsertionMode = InsertionMode.Replace, HttpMethod = "Post", UpdateTargetId = "listForm" }

在您的提交链接上

于 2012-07-09T11:00:03.813 回答