【问题标题】:ASP.Net MVC 3.0 Ajax.BeginForm is redirecting to a Page?ASP.Net MVC 3.0 Ajax.BeginForm 正在重定向到页面?
【发布时间】:2011-11-25 20:16:12
【问题描述】:

在 ASP.Net MVC 3.0 中,我使用的是 Ajax.Beginform

并点击 JsonResult 在表单成功时,我正在调用一个 jQuery 函数。 但由于某种原因,我的表单正在重定向到 JsonAction

我的观点


@using (Ajax.BeginForm("ActionName", "Controller", null, new AjaxOptions
           {
               HttpMethod = "POST",
               OnSuccess = "ShowResult"
           }, new { id = "myform" }))
{
    // All form Fields
    <input type="submit" value="Continue" class="button standard" />
}

我的控制器


public JsonResult ActionName(FormCollection collection)
{
    return Json(new { _status },JsonRequestBehavior.AllowGet);
}

jQuery


<script type="text/javascript">
function ShowResult(data) {
   // alert("I am at ShowResult");
    if (data.isRedirect) {
        window.location.href = json.redirectUrl;
    }
}

由于某种原因,当我单击提交时。 它运行 JSonResult 并将页面重定向到 host/controller/actionname 我已经包括了我的

<script src="@Url.Content("jquery.unobtrusive-ajax.min.js")"></script>

在我的 layout.cshtml 中

谁能告诉我哪里出了问题?

我发现了问题。现在我必须找到解决方案 提交时 我正在验证我的表单

$("#myform").validate({
    submitHandler: function (form) {
   // my logic goes here....
 }});

如果我排除验证 Ajax 表单按预期工作。 但是,如果我验证我的表单,那么 ajax 表单无法按预期工作 谢谢

【问题讨论】:

  • 你的javascript回调被调用了吗?您是否与提琴手核对过,您的 JSon 对象是否已正确返回到浏览器? 重定向到 JsonAction 到底是什么意思?
  • 我的 java 脚本在同一页面中。因为它正在重定向到不同的页面。 JavaScript 不能被调用。是的,我的 Json 对象按预期返回。我在新的重定向页面中看到 json 结果

标签: asp.net-mvc-3 ajax.beginform


【解决方案1】:

当这种情况发生时,几乎总是因为您的脚本文件没有加载

来自:

http://completedevelopment.blogspot.com/2011/02/unobstrusive-javascript-in-mvc-3-helps.html

  1. 在 web.config 中设置提到的标志:
    1. 包括对 jQuery 库 ~/Scripts/jquery-1.4.4.js 的引用
    2. 在 ~/Scripts/jquery.unobtrusive-ajax.js 中包含对挂钩该魔法的库的引用

所以加载提琴手http://fiddler2.com 并查看是否正在调用和加载脚本。

【讨论】:

  • 我看到所有脚本都正确指向的问题。如果我将 html id 标签提供给表单,则问题出在 id 标签上,那么这是行不通的。如果我使用 ID,那么 Ajax 表单将按预期工作。但是我需要我的 Ajax 表单的 ID 标签,因为我正在使用它进行验证。
猜你喜欢
  • 2010-12-23
  • 1970-01-01
  • 2013-05-29
  • 2013-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-07
相关资源
最近更新 更多