jquery完成不起作用

时间:2016-02-09 17:57:34

标签: jquery json ajax

我正在使用jQuery来填充通过AJAX加载的JSON数据的DIV。除了过程的最后阶段,一切都运作良好。

我有3个问题:

首先,它似乎没有出现AJAX完成功能。我没有在控制台日志中看到我的测试输出(也没有错误)。我也尝试过ajaxComplete处理程序,但没有成功。

其次,我的AJAX微调器图像(“rets_loader”)在填充内容之前被隐藏,而不是等到之后。我希望继续显示它,直到所有HTML都可见。

第三,我需要一个计数器,让我可以比较返回的JSON节点数量并采取一些措施。我试过html.length,但它总是0(零)。

这是我简化的代码,使事情更清晰:

$( document ).ready(function() {    
    quick_search();
});

function quick_search(){
    $("#rets_loader").css("display","block");
    $("#ourHolder").css("display","none");
    var url="http://www.whatever.com/json.php";
    $("#ourHolder").html("");
    $.ajax({
        type: "POST",
        url: url,
        cache : false,
        dataType:"json",
        error : function() {
            alert("Sorry, we experienced an error. Please try again.");
        },
        complete: function() {
            console.log("Triggered Ajax complete." );    
        },
        success: function (html) {
            counter=html.length;
            $.each(html, function(i,item) { 
                read+='<a href="#">'+item.Address+'</a>';
                $("#ourHolder").html(read);
            });
            $("#rets_loader").css("display","none");
        }
    });

}

HTML

<div id="rets_loader"><img src="ajax-loader_RETS.gif"></div>
<div id="ourHolder"></div>

0 个答案:

没有答案