动态AJAX - 将响应加载到另一个请求中

时间:2013-04-15 15:58:46

标签: php jquery ajax dynamic

在一个非常自定义的电子商务网站上工作。这些页面是通过ajax加载的,我已经将另一个AJAX请求附加到$.ajaxSuccess()。此请求用于从我的PHP脚本获取响应(然后将响应加载到商店列表中)。

$(document).ajaxSuccess(function() {
    var thisHash = location.hash,
        hashArr = thisHash.split("/"),
        folder = hashArr[1],
        file = hashArr[2];

    retrieveMarkup(folder,file);  
})

然后retrieveMarkup()向我的PHP脚本发出get请求,然后将响应加载到$("#store")

function retrieveMarkup(mainCat, subCat) {
    if (!subCat || subCat == "all"){

        var urlOb = $.param({ "cat": mainCat});
    }
    else {
        urlOb = $.param({ "cat": mainCat, "subcat" : subCat});
    }

    $.ajax({
        url: backendBase+"markup&"+urlOb,
        global: false,
        dataType: "text",
        cache: true,
        success: function(d,s,x) {

           writeRes(x.responseText);
        }
    })

}

我将global函数中的retrieveMarkup()设置为false,以便没有无限循环。

这是我遇到问题的地方:

第一次加载网站时,一切都按预期工作。我导航到Beverages -> All。该脚本按预期工作,并将响应加载到存储中。然后单击Snacks -> All后,脚本仍然有效。但是,在尝试导航回Beverages -> All后,脚本不会将响应插入到商店项目中。但是我可以导航回Snacks -> All并且脚本按预期工作。

注意:您必须先加载Beverages -> All才能使其正常工作。

这有点难以解释,所以这里是指向网站http://grantcr.com/kmm/site/#!/home

的链接

这是我在这个网站上的第一篇文章。所以请对我很轻松:))

0 个答案:

没有答案