首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >jQuery AJAX将解析为JSON

jQuery AJAX将解析为JSON
EN

Stack Overflow用户
提问于 2014-04-08 06:42:26
回答 1查看 758关注 0票数 1

我在网上找不到关于这个神秘虫子的任何东西。我编写了一个简单的Ajax,调用一个CakePHP控制器函数来呈现一个简单的视图。最后,我想把呈现出来的HTML放到弹出窗口中:

Ajax:

代码语言:javascript
代码运行次数:0
运行
复制
$.ajax({
    url: $('base').attr('href') + '/myController/renderPopupContent/' + this.view,
    type: "GET",
    dataType: "html",
    context: this,
    success: function( data ) {
        this.content = data;
        this.show();
    },
    error: function(xhr, status) {
        showMessage(status, xhr);
    }
});

现在我得到了一个jQuery,它说:

代码语言:javascript
代码运行次数:0
运行
复制
Uncaught SyntaxError: Unexpected token <

这是因为jQuery试图(自动^^)将响应解析为JSON。如果我调试脚本,它会在第541行的jQuery (1.9.1)处中断,并真正尝试解析html响应(STRING!)进入或离开JSON。

如何避免这种情况,并使jquery了解dataType的"HTML“

附加信息:

jQuery(@ an 541)发生在我的成功回调中的“警报();”之后,因此在抛出错误时已经完成了Ajax。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-31 15:54:12

在另一个JS文件中,我发现了这个片段:

代码语言:javascript
代码运行次数:0
运行
复制
$(document).ajaxSuccess(function(evt, xhr, options) {
    var response = $.parseJSON(xhr['responseText']);

这显然是在每次ajax之后触发,并尝试解析响应。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22929479

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档