多个jquery html()赋值不起作用

时间:2013-02-27 21:58:17

标签: javascript jquery

我想在ajax调用之前和期间向用户显示“加载器”。这是代码(简化版本......)

$(document).ready(function() {  
    $("#btn").click(function(){
        $("#log").html("loading ajax call...");
        anotherFunc();
    });
});


function anotherFunc(){
   $.ajax({
       type: "GET",
       url: correct_url,
       data: data_to_send,
       dataType: "jsonp",
       success: function(data){
        $("#log").html("new html");
       }
   })
}

问题是“加载ajax调用...”永远不会出现。我只看到“新的HTML”显示。单打ajax #log修改调用完全独立工作(没有其他)

还有另外一种方法吗? 我做错了什么?

PS。我也尝试用另一个id(#log2)写相同的结果。

1 个答案:

答案 0 :(得分:1)

很可能一切正常,但AJAX调用返回非常快(特别是如果你在本地测试)。要查看是否是这种情况,请执行以下操作:

$(document).ready(function() {  
    $("#btn").click(function(){
        $("#log").html("loading ajax call...");
        setTimeout(function(){anotherFunc();},2000);
    });
});