javascript - jQuery ajax 类型错误 : illegal invocation

标签 javascript ajax jquery

我正在开发一个 Ajax 项目。我页面上的所有内容都有效,包括此部分:

var data =  {
    doc:     "sample", 
    action:  "updatemsg", 
    dbid:    97, 
    message: "text"
};

$.ajax({
    url:     ANNOTATION_ENDPOINT,
    data:    data,
    success: console.log,
    error:   console.log
});

但是,对于每个请求,它都会抛出此错误:

Uncaught TypeError: Illegal invocation    jquery.js:974
    fire                                  jquery.js:974
    self.fireWith                         jquery.js:1084
    done                                  jquery.js:7803
    callback                              jquery.js:8518

console.log 调用永远不会进行。 ANNOTATION_ENDPOINT 是有效的网址;我的其他功能使用它没有问题。

我已将问题分解为这一小部分,但我在这里感到困惑。有什么见解吗?

最佳答案

日志函数期望其上下文是控制台对象而不是 jqXHR,所以请尝试

$.ajax({
    url:     ANNOTATION_ENDPOINT,
    data:    data,
    success: console.log.bind(console),
    error:   console.log.bind(console)
});

关于javascript - jQuery ajax 类型错误 : illegal invocation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15313508/

相关文章:

javascript - 如何建立不指向 "Open in new window"的链接

javascript - 如何在 Bootstrap 中检索按钮的工具提示文本?

javascript - 如何使用knockout js在引导模式中获取选定的行

javascript - 不用 ctrl+click 的 Rowunselect

javascript - 内容隐藏/显示

jQuery 对话框调整大小

javascript - 如何在 firefox sdk 中设置请求超时设置?

javascript - ajax调用后如何重新初始化Owl Carousel?

javascript - js obj -> json 文件(ajax、php)

jquery - 根据列表中的选择选项刷新下拉列表