2011-03-09 61 views
2

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

例如:

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

生成以下URL:

content?callback=jQuery15108431726952168015_1299633045933&_=1299633046552 

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

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

我想为每个请求使用相同的回调参数,所以我可以积极缓存响应。

+0

您是否正在寻找使用JSONP来指定请求URL中的回调? – 2011-03-09 01:40:29

回答

9

你需要至少在jQuery 1.5这个工作。

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

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

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

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

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