我正在使用JQuery将内容加载到div元素中,一切正常。
$("#content").load('www.urltogetcontentfor.com')
我现在想扩展这个。我所拥有的结构是树的结构,其中每个分支可以(或可以不)具有附接到其上的子分支。我想要发生的是,JQuery load命令被递归调用,直到没有附加子项为止。类似于以下步骤:
有没有人在JQuery中完成此操作或知道处理此问题的插件?
由于
答案 0 :(得分:3)
递归加载内容可以通过以下原则完成:
function loadTree($element) {
$element.each(function(){
this.load('url', function(){
loadTree(this.find('.children'));
});
});
}
loadTree($('#content'));
使用jQuery对象调用该函数。它遍历对象中的元素并为每个元素调用load。在成功回调中,它会在加载的代码中选择子项并自行调用。
但是,如果可能,您应该尝试使用一个请求获取整个树,例如将数据作为JSON返回并从中创建元素。