Qui*_*Par 11 javascript jquery callback
如何beforeSend在$.getJSON(跨域)中使用回调.
更具体地说$.getJSON,调用是一个YQL服务
select*from html url =" http://www.yahoo.com "
jps*_*ons 34
beforeSend的唯一目的是获取原始XHR对象(通常用于在其上设置HTTP头).你不需要它来踢开旋转器之类的东西.这里的代码(来自@petersendidit):
jQuery.ajax({
url: url,
dataType: "json",
beforeSend: function(){
$('.loading').show();
}
});
Run Code Online (Sandbox Code Playgroud)
最好是这样写的:
$('.loading').show();
jQuery.ajax({
url: url,
dataType: "json"
});
Run Code Online (Sandbox Code Playgroud)
这意味着,除非您需要jQuery.ajax中的任何高级选项,否则您使用jQuery.getJSON的原始计划就可以了.所以你说你想要显示加载GIF,就这样做而忘掉beforeSend.
jQuery(".someSpinnerImage").show();
jQuery.getJSON("http://www.somedomain.com/someurl", function(data) {
jQuery(".someSpinnerImage").hide();
// Do something with data
}
Run Code Online (Sandbox Code Playgroud)
$ .getJSON只是$ .ajax函数的快捷方式
get: function( url, data, callback, type ) {
// shift arguments if data argument was ommited
if ( jQuery.isFunction( data ) ) {
callback = data;
data = null;
}
return jQuery.ajax({
type: "GET",
url: url,
data: data,
success: callback,
dataType: type
});
},
getJSON: function( url, data, callback ) {
return jQuery.get(url, data, callback, "json");
},
Run Code Online (Sandbox Code Playgroud)
因此,如果你需要做更多的事情,那么基本的getJSON调用只需使用$ .ajax,如:
jQuery.ajax({
url: url,
dataType: "json",
beforeSend: function(){
$('.loading').show();
}
});
Run Code Online (Sandbox Code Playgroud)
另一种选择是使用$ .ajaxSend和$ .ajaxComplete函数,但这将使每个ajax调用之前和之后调用这些函数.
| 归档时间: |
|
| 查看次数: |
29045 次 |
| 最近记录: |