$ .ajax()获取请求成功函数未被MVC 4调用

时间:2013-03-07 19:46:37

标签: asp.net-mvc jquery

我怀疑是因为我没有返回可以解析的JSON。这是一个示例:

Response.ContentType = "application/json";
Response.Write(JsonConvert.SerializeObject(new {foo="bar"}));

Chrome告诉我以下内容......“未捕获的SyntaxError:意外的令牌:”

这种方法产生相同的反应:

return Json(new {foo="bar"}, JsonRequestBehavior.AllowGet);

我做错了什么?此外,这是一个跨域请求。

$.ajax({
        url: myURL,
        type: 'GET',
        async: true,
        dataType: 'jsonp',
        cache: false,
        success: function (data) {
            alert(data);
        }
    });

编辑:这是JSON C#spits out:

{"foo":"bar"}

1 个答案:

答案 0 :(得分:2)

我认为这是因为jQuery期望的dataType设置为jsonp,但是你没有返回JSONP。将其更改为json甚至使用:

$.get(myUrl, { cache: false }).done(function (data) {
    alert(data);
});