当我使用AJAX发布时,MVC无法加载资源

时间:2018-06-19 02:54:28

标签: ajax asp.net-mvc

我正在使用Visual Studio 2013中的MVC 5,我在使用AJAX向控制器发布视图时遇到以下错误: “无法加载资源:服务器响应状态为500(内部服务器错误)”。 我将在下面添加我的代码:

$(document).ready(function () {
    $("button[name=SeleccionarFecha]").on("click", function () {

        var numero = $(this).val();
        $.ajax({
            type: 'POST',
            url: '/Fixture/PruebaPost',
            dataType: "json",
            data: JSON.stringify(postData),
            contentType: "application/json; charset=utf-8",
            error: function (response) {
                //alert(response.responseText);
            },
            success: function (response) {
                $("div#Instancia").text('Fecha ' + numero);
            }
        });
    });
});

在Fixture控制器中:

[HttpPost]
public JsonResult PruebaPost(Equipo equipo_local, int numero)
{
    if (numero != fixture.FechaActual.Numero)
    {
        // do something ..
    }
    return Json(null);
}

当我点击触发包含所显示代码的事件的按钮时,没有任何反应,如果我在浏览器中检查F12,我会看到以下错误:

  

无法加载资源:服务器响应状态为500   (内部服务器错误)在http:/ localhost:36776 / Fixture / PruebaPost:1

但是如果AJAX动作网址是:

url: '/Fixture/SeleccionarFecha'

控制器方法:

[HttpPost]
public JsonResult SeleccionarFecha(List<Partido> partidos, int numero)
{
    if (numero != fixture.FechaActual.Numero)
    {
         this.fixture.FechaActual.Partidos = partidos;
         this.fixture.SetFechaActual(numero);
         return Json(this.fixture.FechaActual.Partidos);
    }
    return Json(null);
}

它会工作,我不会得到同样的错误。如果我调试解决方案,我可以在使用AJAX仅发布“numero”值后到达该方法。 我无法弄清楚为什么只是通过使用不同的方法名称,行为不是预期的。在这两种方法中,我使用“numero”参数,我通过AJAX,并且我不发送其他参数的数据(在我提到的第二个引用中,我在该对象中收到null,如预期的那样)。

希望你能帮助我, 我最诚挚的问候。 马丁,布宜诺斯艾利斯。

0 个答案:

没有答案