加载ajax数据不在div或其他元素中

时间:2011-09-29 13:07:44

标签: jquery

首先,抱歉我的英语不好,我说西班牙语。 好吧,在这种情况下我需要一些帮助:

我使用java制作了一个microsoft excel POI报告,这个报告位于一个servlet中,当我在一个href中做一个clic时我会调用它,例如:

<a href="ServeletReport">Report</a>

直到这里,一切正常,但我需要使用jQuery中的事件(可能是.load())来调用此报告,但此事件仅将数据结果分配给div或其他元素。我不需要将结果分配给任何元素,因为我的报告是在Excel中生成并打开的,如果我将它分配给div,则此div显示为罕见的simbols。

我需要添加一个loading imagen,直到我的报告准备好并打开。

我的代码很糟糕,我需要一些帮助。

$("#mylink").click(function(){
    $("#contenidoo").empty().html('<img src="images/loading-icon.gif"/>');
    $("#result").load("ServletReport");
});

我不需要将结果放在div $(“#results”)中,我不需要将结果放在任何地方,我想做clic并等到我的报告生成但查看加载图像。

4 个答案:

答案 0 :(得分:1)

使用jquery .ajax函数代替.load:http://api.jquery.com/jQuery.ajax/

答案 1 :(得分:0)

答案 2 :(得分:0)

您可以使用.get方法向服务器发出HTTP GET请求,并在完成后使用回调函数执行某些操作:

$("#mylink").click(function() {
    $("#contenidoo").empty().html('<img src="images/loading-icon.gif"/>');
    $.get("ServletReport", function() {
        $("#contenidoo").empty(); //Remove the image you appended above
    });
});

答案 3 :(得分:0)

我发现这非常有用:

$("#mylink").click(function() {     
  $("#contenidoo").empty().html('<img src="images/loading-icon.gif"/>');     
    $.get("ServletReport", function() {        
     $("#contenidoo").empty(); //Remove the image you appended above     
  }); 
}); 

但是我不想把结果放在任何地方,并且使用上面的方法我的servlet(我的excel doc)的结果没有被打开。我认为它缺少一些小东西。 我希望你的帮助。