2011-04-17 28 views
0

我该如何让ajax等待,直到我获取一些信息形式的数据库?我如何让ajax等待,直到我从数据库中获取一些信息?

例如

function cat() 
     { 
     my_info = "<?php ..fetching database information .. ?>"; 
     table = document.getElementById('table_2'); 
      table.innerHTML=my_info; 
     } 

我应该怎么做才能查看AJAX加载gif直到我完成获得的信息显示给最终用户?

+0

这是怎么回事的方式Ÿ是不可能的ou显示。这种提取需要多长时间?你提取什么样的数据?您可能需要查看Ajax以获取数据 – 2011-04-17 17:59:23

+1

另外,在我看来,您根本没有使用ajax - 您只需通过PHP生成HTML,其中已经设置了“my_info”var的值。请记住,PHP是服务器端的,并且在浏览器中呈现页面之前已经运行*,这是JavaScript有机会执行的时间。 – 2011-04-17 18:15:58

回答

0

您可以放置​​代码以便在发出ajax请求(如果使用纯javasacript时为send()方法)后查看加载图像。

request.open("GET", url, true); 
request.onreadystatechange = updatePage; 
request.send(null); 
// write code to show your image here 

然后隐藏在回调函数updatePage()

0

总得有人给你一个jQuery的替代方案,形象,所以我在这里:建立Ajax调用发送Ajax调用之前显示的图像:

$.ajaxSetup({ 
    beforeSend: function() { 
    $('#loadingImage').show() 
    }, 
    complete: function(){ 
    $('#loadingImage').hide() 
    } 
}); 

,然后设置Ajax调用作为

$.get(url, function (response) {$("#myTable").html(response);}); 
相关问题