【问题标题】:ASP.NET MVC 2 Ajax form submit, error: returns error with no information?ASP.NET MVC 2 Ajax 表单提交,错误:返回没有信息的错误?
【发布时间】:2011-04-26 02:46:13
【问题描述】:

我有一个部分视图,其中包含一个表单。它是强类型的。

我在带有部分视图的视图中使用 ajax 来提交表单。

它基本上是一个创建新数据库项的表单,我可以看到控制器操作正在工作并被调用。

我的 ajax 提交如下所示:

$(document).ready(function () {
     var form = $("#addPost");
     form.submit(function () {
        $.ajax({
        type: "POST",
        url: form.attr("action"), 
        data: form.serialize(),
        dataType: "json",
        success: function (data) {
            alert('success!');
        },
        error: function (req, status, err) {
             alert('err=' + err + ' status=' + status);
        }
   });
   return false;
  });
}); 

所以控制器执行的工作很好,并尝试返回部分视图的强类型。我不断收到错误 js 警报,其中没有任何信息。

这是因为我的父视图类型不一样,而是发送 ajax 的视图吗?

如果是这样,解决方案是什么?我要解决这个问题吗?我需要父页面来获取响应,然后使用 js 在页面上显示表单信息。谢谢!

【问题讨论】:

  • 您能发布您的控制器操作代码吗? $.ajax 期望返回一个 JSON 对象。这是正确的返回类型吗?

标签: jquery ajax asp.net-mvc-2 partial-views


【解决方案1】:

您需要显示更多细节。例如,控制器中的代码。另外,您是否尝试过调试它以查看返回的内容?

但是,调试这种 ajax 静默失败的可靠方法是使用 Firefox 及其插件 Firebug。它将显示错误并向您显示对服务器的每次调用的响应。如果您的控制器返回错误,服务器将发送一个完整的错误页面,您可以在 Firebug 中看到这一点。

ajax 使调用静音的事实是另一回事。

另一方面,您的 jQuery 代码中可能存在拼写错误。见:

Error in jquery code casusing problems...

【讨论】:

    猜你喜欢
    • 2015-10-24
    • 1970-01-01
    • 2021-08-25
    • 1970-01-01
    • 1970-01-01
    • 2016-10-21
    • 1970-01-01
    • 2014-12-22
    • 1970-01-01
    相关资源
    最近更新 更多