aJax回发没有在MVC 5中调用控制器

时间:2014-10-28 10:42:17

标签: jquery asp.net-mvc asp.net-ajax

我有一个下拉列表,在更改时我使用此代码激活aJax调用

代码命中控制器,好像我删除了ajax错误,但我无法理解为什么它没有传回任何东西

$(document).ready(function () {
        $("#lid").on("change", function () {

        var myVar = $(this).find("option:selected").text()

        $.ajax({
            url: "@Url.Action("UpdateLang")",
            type: "POST",
            data: { model: JSON.stringify(myVar) },
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            error: function (response) {
                alert("error"); // response.responseText
        },
            success: function (response) {
                alert("set to " + myVar);
        }
    });
    })

});

我的控制器中有下一个代码

    [HttpPost]
    public ActionResult UpdateLang(loggedinViewModel model)
    {
        if (model != null)
        {
            return Json("Success");
        }
        else
        {
            return Json("An Error Has occoured");
        }

    }

我不知道为什么,但是aJax调用并没有激活我的控制器

有什么理由可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

我认为你有这个问题是因为控制器c#的权利,试图从' homecontoller.cs'什么,加上你实际上没有为模型传回一组数据,所以这也将失败

希望这是一些指导