jQuery JSONP 回调未触发

2023-12-10

我正在使用 jQuery 发出跨域 AJAX 请求,但我的回调函数没有触发(请参阅http://jsfiddle.net/zC8z5/).

function jsonpCallback(response){
    $('#code').text(response.data);
}

$.ajax({
    url: url,
    dataType: 'jsonp',
    error: function(xhr, status, error) {
        alert(error);
    },
    success: function() {
        alert("success");                            
    },
    jsonp: false,
    jsonpCallback: 'jsonpCallback'
});

根据文档:

从 jQuery 1.5 开始,将 jsonp 选项设置为 false 会阻止 jQuery 将“?callback”字符串添加到 URL 或尝试使用 “=?”进行转型。在这种情况下,您还应该显式设置 jsonpCallback 设置。例如,{ jsonp: false, jsonpCallback: “回调名称”}

但是,如果我不指定回调,而只是处理成功事件中的数据,则它可以工作(请参阅http://jsfiddle.net/2gBRT/).

$.ajax({
    url: url,
    dataType: 'jsonp',
    error: function(xhr, status, error) {
        alert(error);
    },
    success: function(data) { 
        jsonpCallback(data);
    }
});

我是否误解了如何使用 jQuery 发出 JSONP 请求?


正如您摘录的文档中所述,如果服务器需要一个名为callback,jQuery 足够聪明,可以为您填补空白。 Bitbucket 确实使用此参数名称,因此您会得到如下 URL:

https://api.bitbucket.org/.../?callback=jquery1234_5678

jquery1234_5678实际上是为您的回调自动生成的函数名称。然后 Bitbucket 返回如下内容:

jquery1234_5678({
    "node": "someId",
    "path": "filename",
    "data": "content"
})

所以该函数被调用。另外,您可以简化(demo)成功部分为:

success: jsonpCallback

如果 Bitbucket 需要不同的参数名称,您可以将其用作 jsonp 的值。例如,如果您通过了:

jsonp: "functionName"

URL 看起来像:

https://api.bitbucket.org/.../?functionName=jquery1234_5678

但反应是一样的。

你只需要jsonpCallback如果您不希望 jQuery 生成函数名称。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jQuery JSONP 回调未触发 的相关文章

  • 如何在 jQuery 中获取 ul 列表中 li 的第一个 href 链接

    我有以下清单 ul class tabs li a href testlink php First link a li li a href testlink2 php Second link a li ul 我想获取第一个链接的 href
  • 文件上传控件 OnChange 事件 JQuery

    我正在尝试使用 AJAX JQUERY 和 Net HTTPHandler 构建页面来上传文件 如下所示http dotnet dzone com news async file upload jquery and http dotnet
  • jQuery Mobile 表单验证

    我有一个移动网站 除了验证之外一切都工作正常 基本上我希望从用户那里获取值 然后在单独的页面 process php 上处理它们 但是 在这样做之前 我需要检查以确保字段已填充 我已经研究了几种方法来做到这一点 但似乎没有一种有效 我现在有
  • jquery从变量中删除html元素

    我将 html 保存在变量中 var itinerary events today html 我有很多 html 和一个按钮我想删除 它的 ID 为 myButton 如何从变量中保存的 html 中删除它 我建议这种方法 var itin
  • 如何使输入字段和提交按钮变灰

    我想变灰这两件事 http doorsplit heroku com 歌曲输入字段和提交按钮 直到用户输入艺术家 有没有一种简单的方法可以通过 JQuery 来做到这一点 艺术家输入字段的id是 request artist 你可以这样做
  • 如何更改此 jquery 插件的时区/时间戳?

    我正在使用这个名为 timeago 的插件 在这里找到 timeago yarp com 它工作得很好 只是它在似乎不同的时区运行 我住在美国东部 费城时区 当我将准确的 EST 时间放入 timeago 插件时 比如 2011 05 28
  • 如何在jquery中以相反的顺序迭代元素? [复制]

    这个问题在这里已经有答案了 我是jquery的新手 我想知道如何使用each 在jquery中以相反的顺序迭代表单元素 任何帮助 将不胜感激 尝试这个 input get reverse each function
  • fullCalendar 未显示正确的结束日期

    我正在看调试页面 http jsbin com wukofacaxu edit js outputFullCalendar 官方网站的 我想安排一个活动时间为 22 09 2015 至 30 09 2015 dd mm yyyy 但它只显示
  • Jquery 点击处理程序两次后不工作

    我面临一个有点奇怪的问题 我正在使用 bing 翻译器 http www bing com widget translator http www bing com widget translator 并尝试使用他们的 API 自行定制它 这
  • 在剑道组合框中动态添加项目

    如果你们中有人使用过 kendo ui 请告诉我如何在 kendo 组合框中动态添加新项目 我尝试在谷歌和其他地方搜索 我的结论是剑道中没有这样的功能 以供参考 JSBIN http jsbin com ebutaw 2 edit sour
  • Javascript 或 jQuery Flot 中的仪表图 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在尝试获得一个看起来像仪表的图表 我已经在其他图表中使用 jQuery Flot 那么是否可以使用 Flot 或纯 Javascrip
  • 回调月、周、日标题栏按钮点击?

    当用户单击日 周 月按钮时 我需要运行一些 Javascript 代码来重新加载日历 有没有类似的回调dayButtonClicked 或者其他的东西 BUG发生 当我第一次加载日历时 最初的视图看起来不错 我的最初加载日 一旦我加载另一个
  • 未捕获的 ReferenceError: $ 未在 jQuery 中定义错误

    我有这个代码jQuery 文件名是 javascript js 我以前使用过 JavaScript document ready function readFile click function get test txt function
  • 选择移动 Web HTML5 框架 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • jQuery.getJSON:如何避免在每次刷新时请求 json 文件? (缓存)

    在此示例中 您可以看到生成的 HTML 列表 每次刷新时 脚本都会请求数据文件 ajax test json 并再次构建列表 生成的文件 ajax test json 被静态缓存 但是如何避免在每次刷新时请求此文件 source jquer
  • jquery 通过 div 选择复选框

    我想知道 jQuery 中是否有一种方法可以在有人单击整个 div 层时选中 取消选中复选框 本质上就像有一个巨大的选择区域 有任何想法吗 这是一个例子 我试图使复选框周围可单击以切换单个复选框 几乎如此 fieldset div div
  • 如何在 Bootstrap 3 中制作进度条动画?

    我正在尝试为 Bootstrap 进度条设置动画 但我不知道该怎么做 我得到了宽度的值但是console log bar width 返回宽度px但不是 如内联所示style width 90 我用代码重新创建了一个 bootply Boo
  • jQuery Blur() 在 Chrome 上不起作用

    我在 MacOSX 上运行这个http jsfiddle net q84wv http jsfiddle net q84wv on Chrome最新版本 它不会工作 在 Firefox 上运行时它工作得很好 有什么线索吗 假设您想要aler
  • 常规 JavaScript 可以与 jQuery 混合使用吗?

    例如 我可以采用这个脚本 来自 Mozilla 教程 https developer mozilla org en Canvas tutorial Basic usage
  • 使用 jQuery 修改 HTML 表格的结构

    我有一个元素列表 X在以下示例中 显示在 HTML 表格的行或列中 从 HTML 代码的角度来看 我有 水平显示 table tr td A td td B td td C td tr table 或 垂直显示 table tr td A

随机推荐

  • Angular 2 ngIf 和 CSS 过渡/动画

    我想要一个 div 使用 css 从角度 2 右侧滑入 div class note p Notes p div
  • Javascript 函数打印 .innerHTML 但 HTML 只出现一会儿就消失了

    我有一个调用名为 submit 的 javascript 函数的按钮 在该函数中 我只需编写 document getElementById try innerHTML it Work 测试我的按钮是否正在将数据传递给函数 问题是 它有效
  • 如何在phonegap中同时选择多个文件

    我在这里用谷歌搜索并搜索 我没有找到任何与phonegap中的多个文件选择器或选择器相关的选择解决方案 目前我可以在phonegap 适用于Android 中一次选择单个文件 无需任何插件用它来获取文件 如何在 PhoneGap 中一次选取
  • 如何将通过C++中的另一个类添加的数据显示到ListView、QML?

    我需要呈现 QLinkedList 容器中的所有数据 这是由任务给出的 我创建了两个类 DataObject 用于 ListView 中的委托 Glav 用于包含 DataObject 对象的容器 我有一个按钮 可以通过它向容器添加数据 G
  • 在 Visual Studio 2019 中禁用工具提示

    将鼠标悬停在 C 文件中的每一段文本上都会弹出一个 提示 有谁知道如何删除这些提示 如果您能告诉我如何从 Visual Studio 2019 中的每个窗口中全局删除所有工具提示 那就加分了 Visual Studio 没有关闭工具提示的设
  • C++11 中的隐式构造函数参数转换

    让我们考虑以下代码 class A public A int x class B public B A a int main B b 5 return 0 在编译时 编译器抱怨 home test main cpp 80 candidate
  • 使用 PHP 连接到 EPP 服务器,使用 SSL

    我即将连接到安全 EPP 服务器并发送 XML 请求 然后再次接收 XML 格式的响应 我需要在 PHP 中执行此操作 因此 我需要使用 SSL 证书通过 TCP 连接到特定端口上的 EPP 服务器 因为这是我到目前为止所掌握的信息 仍在等
  • node.js socket.io room 用户总数

    我正在尝试计算特定房间中的用户总数并将其广播给该房间中的所有人 这是我所拥有的 但出现错误 var clients io sockets clients cc lowerCase data roomname length io socket
  • 如何在画布上保存图像和文本

    我制作了一个画布并在画布上绘制了图像我还在上面绘制了一些文本 帆布 图像和文本现在都是独立的 我想要那个 当我 绘制应打印在图像上的文本 我可以保存现在的图像和文本 在图像上 我想在另一个活动中发送带有文本的图像 here is my co
  • Web api - 如何使用 slugs 进行路由?

    我希望能够解析像这个问题这样的链接 http stackoverflow com questions 31223512 web api how to route using slugs 所以简单地在服务器上路由ignoringURL 的最后
  • 如何删除 C 语言中的这一行:“程序以退出代码结束:0”

    我用 C 语言编写了一段代码 它执行得很好 但最后我得到了一行 程序以退出代码结束 0 这条线意味着什么以及如何摆脱它 这是什么 退出代码 0 表示没有错误 如果一个程序想要 表明退出时出现问题 它将退出 非零值 如何摆脱它 不要使用IDE
  • Python中导入txt表文件的等高线图

    我正在尝试制作一个等高线图 例如 使用数据表 如 txt 文件中的 3 列 行数很长 使用此代码 import numpy as np import matplotlib pyplot as plt import scipy interpo
  • 自定义 Chrome 网络检查器的外观

    我已经厌倦了每天使用 Firefox 时遇到的众多问题 我再次尝试切换到 Chrome 让我沮丧的事情之一是检查器中选项卡的布局 在 Firebug 中 它们都位于顶部 所以如果我想要一个项目的指标 那是非常简单的 在 Chrome 中我总
  • ImportError:libcudnn.so.7:无法打开共享对象文件:没有这样的文件或目录[关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我安装了Tensorflow 1 6 0 Python 3 6 4 环境中使用 anaconda 的 GPU 版本 当我做import tensorflow as tf 我收到以下错
  • 将 JavaScript 放置在 HTML 文件中的什么位置?

    假设我有一个相当大的 JavaScript 文件 压缩到大约 100kb 左右 我所说的文件是指它是一个外部文件 可以通过以下方式链接
  • 使用 msiexec /a 启动管理安装的目的是什么?

    Windows Installer 技术支持管理安装 启动管理安装的命令行是 msiexec a setup msi 我想了解这种安装的目的以及它们在什么情况下有帮助 管理安装 添加一些实际例子 1 静默运行提取 无图形用户界面 msiex
  • 用于 C++ 的 XML 数据绑定,如用于 Java 的 JAXB

    我在 C 中数据绑定和解析的使用 领域中以完全 天真 的方式写下这个问题 所以 请耐心听我说 您可能会发现这个问题与以下问题重复 THIS 经过一番谷歌搜索后 我发现 C 具有与 JAXB for java 类似的库 用于以 代码合成 xs
  • pandas read_sql 中的“TypeError:‘NoneType’对象不可迭代”

    我正在尝试在 python 中使用 pyodbc 运行 SQL 命令 其中SQL命令包含多个SELECT命令和IF语句 但我收到如下错误 columns col desc 0 for col desc in cursor descripti
  • PHPUnit 不允许我包含文件

    每当我尝试包含文件时 PHPUnit 都会给我一条错误消息 例如 以下代码给我错误 但是如果我删除第四行 require once controller ProductController php 运行良好 我得到的错误是 Warning
  • jQuery JSONP 回调未触发

    我正在使用 jQuery 发出跨域 AJAX 请求 但我的回调函数没有触发 请参阅http jsfiddle net zC8z5 function jsonpCallback response code text response data