2

所以,这是我的 JSONP URL:

http://community.tradeking.com/leaderboard.js

这是我试图解析它的jQuery:

$.ajax({
  dataType: 'jsonp',
  jsonp: 'callback',
  url: 'http://community.tradeking.com/leaderboard.js?callback=?',
  success: function () {
    alert("something");
  },
});

这是我在 Firebug 中遇到的错误:

processLeaderboard 未定义

我也尝试过 getJSON 和 jQuery JSONP 特定插件,但它们都以类似的方式失败。JSONP 正在其他地方成功使用。

4

2 回答 2

4

您需要一个名为 的函数processLeaderboard,因为该函数名称似乎硬编码到您的链接的响应中。

var processLeaderboard = function (data) {
  alert('Do your stuff here');
}

$.ajax({
  dataType: 'jsonp',
  jsonpCallback: 'processLeaderboard',
  url: 'http://community.tradeking.com/leaderboard.js?callback=?',
  success: function () {
    alert("something");
  },
});
于 2010-03-02T21:30:48.977 回答
3

在使用 chrome 的 jsbin 中,这对我来说效果很好。

var processLeaderboard = function(x) {
  alert(x[0].member.avatar.public_filename);
};

$(document).ready(function() {

   $.ajax({
     dataType: 'jsonp',
     jsonp: 'processLeaderboard',
     url: 'http://community.tradeking.com/leaderboard.js?callback=?'

   });
});​
于 2010-03-02T21:54:11.977 回答