[MVC+JQUERY]ajax返回json数据,出现error:readyState=4,status=500

项目中遇到ajax出现error:readyState=4,status=500,但是对应的逻辑却正常执行了。ajax代码如下:

 

function Delete(id) {
        layer.confirm('确定删除本菜单?', { btn: ['确定', '取消'] }, function () {
            $.ajax({
                url: "/Admin/Roles/Delete/" + id,
                type: "GET",
                dataType: 'json',
                success: function (data) {
                    alert(data);
                },
                error: function (XMLHttpRequest, textStatus, errorThrown) {
                    alert(XMLHttpRequest.status);
                    alert(XMLHttpRequest.readyState);
                    alert(textStatus);
                }
            });
        }, function () {
            layer.msg("取消", {time:1000});
        });
    }

 

因为是返回JSON数据,控制器中返回JsonResult类型,原来代码:

return Json(new { id = 1, name = "删除成功!" });

上面这种写法,controller是get方式时,执行ajax会报错。下面这种写法则不会。

return Json(new { id = 1, name = "删除成功!" },JsonRequestBehavior.AllowGet);

 

posted @ 2016-01-13 23:32  追逐者——Eagle  阅读(2217)  评论(0)    收藏  举报