javascript - JSONP 仅适用于命名回调函数

标签 javascript json jsonp

我已经让 JSONP 使用匿名函数,但无法使用命名函数。此代码有效(警报显示正确的数据):

$.getJSON('http://example.com/test.aspx?foo=bar&callback=?',
    function (data) { alert(data.baz) })

但是此代码不起作用(没有出现警报):

function dat(data) {
     alert(data.baz)   
}

$.getJSON('http://example.com/test.aspx?foo=bar&callback=dat')

你能解释一下为什么最后一个代码不起作用吗?

编辑:我拿出了一个不相关的示例

最佳答案

我不确定省略回调是否是正确的用法(或者,至少,我找不到任何文档来定义如果不提供回调应该发生什么)。如果您想使用命名函数作为回调,您可以这样做:

function dat(data) {
    alert(data.baz)   
}

$.getJSON('http://example.com/test.aspx?foo=bar&callback=?', dat);

关于javascript - JSONP 仅适用于命名回调函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4890672/

相关文章:

javascript - AngularJS:使用回调在循环中获取数据

c++ - 读取和解析 JSON 文件 C++ BOOST

jquery - 通过 JQuery JSONP 调用 Google Ajax 搜索 API

javascript - Node js.在一段时间间隔后没有获取值

php - javascript 问题,通过 <php echo ?> 发布到 facebook API,需要转义 ' and "

javascript - 使 Div 固定底部和可滚动

json - 创建 JSON Gist(冲突)

php - 获取对 POST 的跨站点 JSON 响应的最佳实践?

javascript - Angular JS `$http` 发送 POST 而不是 GET

jquery - WCF 4、JSONP 和 jQuery 导致解析器错误