如何用ajax实现加载显示
How to implement loading display with ajax
我使用ajax从php文件返回数据。但如果出现加载显示,比如动画gif之类的,会很好看。我曾经尝试过使用文本,但没有注意到。有比我更好的方法吗。
function small_loader(t){
if(t === 'show'){
$('#sub_menu').html('Loading');
}else{
$('#sub_menu').html('');
}
}
function loadtools(t){
var tools = 'tools/'+t+'.php';
$.ajax({
url:tools,
type:'POST',
beforeSend: function(){
small_loader('show');
},
success: function(e){
$('#sub_menu').html(e);
},
complete:function(){
small_loader('hide');
}
});
}
目前,php文件上只有一个for循环,它用kine break来回显数字,用于测试目的。如果我关闭small_loader函数,这确实有效。为什么会这样?
您将#sub_menu设置为"正在加载…"然后把AJAX的东西放在那里,最后在禁用加载器时用"覆盖它,覆盖AJAX响应。
尝试为加载程序使用不同的div,也许可以隐藏#sub_menu并在它完成时显示它。
您应该在HTML中添加加载程序(在正确的位置,比如启动ajax请求的按钮旁边),将其隐藏在css中(显示:none),在发送请求之前显示它,并在返回响应时隐藏它:
function loadtools(t){
var tools = 'tools/'+t+'.php';
$.ajax({
url:tools,
type:'POST',
beforeSend: function(){
$("#your_loader_wrapper_id").show();
},
success : ...,
error : ...,
complete: function(e){
$("#your_loader_wrapper_id").hide();
$('#sub_menu').html(e);
}
});
}
相关文章:
- 如何在生成下载文件时显示加载动画
- 如何在谷歌字体加载时显示加载图像
- 有没有比在app.js上绑定模块名称更好的方法来动态加载视图模型和视图以显示模态
- 如何用ajax实现加载显示
- 使用javascript加载/显示图像并获得%下载
- 谷歌地图不会加载/显示KML文件
- 我的图片不是使用惰性加载显示的
- javascript d3可视化不加载/显示,直到点击HTML输入
- 导航标签动态加载/显示
- jQuery Select2远程数据加载:显示选项而不是占位符
- Console.log一些东西一旦异步Facebook喜欢按钮加载(显示)
- PHP停止表单重新加载显示错误Js
- 预加载显示/隐藏分区
- ReCaptcha不会在IE中加载/显示,但在Chrome和safari中可以完美运行
- dom事件——通过JavaScript加载显示一个又一个元素
- jQuery延迟加载-显示的问题:无
- Json.数据没有正确加载/显示
- 在每个页面加载显示不同的图像
- 如何检测PDF数据对象是否在html对象中加载/显示/有效
- Jquery添加页面加载显示请求的标签功能