用jquery进行ajax请求,页面在进行ajax加载内容时,出现旋转的圈,这个代码应该写在ajax代码的什么位置?就像刷新浪微博那样。
认证0级讲师
$.ajax({ url:'/', type:'get', beforeSend:function () { // 显示loading }, success:function (data) { // 处理数据 }, complete:function(){ // 隐藏loading } });
为什么不写到success里哪?因为有可能请求是会失败的,所以当失败的时候也应当关闭loading。所以最合适的就是放到complete中。这样不管是成功还是失败,只要完成请求交互就会关闭loading。
beforeSend
发送请求之前调用
// 显示旋转的圈 $.get('URL', function() { // 隐藏旋转的圈 });
在调用 $.ajax 之前显示,在 ajax success 后隐藏
在ajax执行之前,然后ajaxsuccess以后,hide掉选择的这个元素~
写在你要发送的请求前例如:$.ajax({});前面,然后在success或者error函数里再处理隐藏或者报错
在发送请求之前显示 loading
如果请求成功,则在成功后,并且数据处理完成后隐藏 loading
如果请求失败,或者数据处理失败,则隐藏 loading 并且显示错误信息
为什么不写到success里哪?
因为有可能请求是会失败的,所以当失败的时候也应当关闭loading。所以最合适的就是放到complete中。这样不管是成功还是失败,只要完成请求交互就会关闭loading。
beforeSend
发送请求之前调用
在调用 $.ajax 之前显示,在 ajax success 后隐藏
在ajax执行之前,然后ajaxsuccess以后,hide掉选择的这个元素~
写在你要发送的请求前例如:$.ajax({});前面,然后在success或者error函数里再处理隐藏或者报错
在发送请求之前显示 loading
如果请求成功,则在成功后,并且数据处理完成后隐藏 loading
如果请求失败,或者数据处理失败,则隐藏 loading 并且显示错误信息