【问题标题】:Specify the callback parameter with JQuery.getJSON使用 JQuery.getJSON 指定回调参数
【发布时间】:2012-12-07 12:44:08
【问题描述】:

在使用JQuery的getJSON方法时,有什么方法可以指定回调参数的值吗?

例如:

$.getJSON('/content?callback=?', function(data) {});

生成以下 URL:

content?callback=jQuery15108431726952168015_1299633045933&_=1299633046552

这里的参数是库随机生成的。

我想指定我自己的回调参数。

我想对每个请求都使用相同的回调参数,这样我就可以积极地缓存响应。

【问题讨论】:

  • 您是否希望在请求 URL 中指定回调的地方使用 JSONP?

标签: jquery json jsonp


【解决方案1】:

您至少需要使用 jQuery 1.5 才能使其工作。

// The URL generated is "/content?callback=myCallback"
$.ajax({
  url: '/content?callback=?',
  dataType: 'jsonp',
  jsonpCallback: 'myCallback',
  cache: true,
  success: function(data) {}
});

【讨论】:

    【解决方案2】:

    jQuery 的所有 ajax 便利函数只是 $.ajax 的包装器。

    $.ajax({
      url: url,
      dataType: 'json',
      data: data,
      success: callback
    });
    

    为什么不创建自己的便利包装器?

    function fetchJSON(url, data, callback) {
        return jQuery.get(url, data, callback, "json");
    }
    

    【讨论】:

      猜你喜欢
      • 2010-12-07
      • 1970-01-01
      • 2012-05-31
      • 2010-10-09
      • 2018-01-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多