如何在jQuery中使用for()循环递归地删除除法?

如何在jQuery中使用for()循环递归地删除除法?,jquery,Jquery,我已经创建了一个专栏文件夹导航器,它在大多数情况下都可以工作。但是,如果用户选择向后移动(或向左移动)并选择较早的文件夹,我需要删除以前导航过的所有级别 我可以在第一级导航中使用它,但在我的一生中,我无法让代码删除除此之外的任何级别 $(document).ready(function(){ var folders = new Object(); var hierarchy = new Array(); var levels = new Object(); var

我已经创建了一个专栏文件夹导航器,它在大多数情况下都可以工作。但是,如果用户选择向后移动(或向左移动)并选择较早的文件夹,我需要删除以前导航过的所有级别

我可以在第一级导航中使用它,但在我的一生中,我无法让代码删除除此之外的任何级别

$(document).ready(function(){
    var folders = new Object();
    var hierarchy = new Array();
    var levels = new Object();
    var id;
    var index;
    var container = 325;
    levels.index = 1;
    folders.chosen = (folders.chosen == null) ? 0 : folders.chosen;
    $(".folders-hierarchy").delegate('li a', 'click', function(event) {
        event.preventDefault();
        id = $(this).attr("data-folder");
        levels.chosen = $(this).closest('ul').attr("data-levels");
        folders.chosen = id;

        index = hierarchy.indexOf(levels.chosen);
        if (index == -1) {
            hierarchy.push(levels.chosen);
        }
        if (levels.chosen < levels.index) {
            hierarchy.splice(index, hierarchy.length);
            for (var i=levels.chosen;i<levels.index;i++) {
                $('[data-levels="' + i + '"]').parent().remove();
            }
            levels.index = 1;
        } else {
            levels.index++;
        }

        $(".container-folders").css('width', (container = (container+325)) + 'px');
        $("div.container-folders").scrollLeft(325);
        get_folders_hierarchy(folders);
    })
    function get_folders_hierarchy (folders) {
        $.ajax({
            url: base_url + "folders/jq_get_folders_hierarchy/" + folders.chosen,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            cache: false,
            success: function (element) {
                $("div.container-folders").append('<div class="container-folder"><ul id="folders-hierarchy-' + folders.chosen + '" data-levels="' + levels.index + '">');
                if (element!=null) {
                    for (var i=0;i<element.length;i++) {
                        $("#folders-hierarchy-" + folders.chosen).append('<li><input type="radio" value="' + element[i].child + '" name="folders[]" /><a href="#link" data-folder="' + element[i].child + '">' + element[i].name + '</a></li>');
                        if (i==(element.length)-1) {
                            folders.chosen = element[i].parent;
                        }
                    }
                } else {
                    $("#folders-hierarchy-" + folders.chosen).append('<li><input type="radio" value="' + folders.chosen + '" name="folders[]" />Choose this Folder</li>');
                }
                $("div.container-folders").append('</ul></div>');
            }
        });
    }
    get_folders_hierarchy(folders);
});
$(文档).ready(函数(){
var folders=新对象();
var hierarchy=新数组();
变量级别=新对象();
变量id;
var指数;
var=325;
水平指数=1;
folders.Selected=(folders.Selected==null)?0:folders.Selected;
$(“.folders hierarchy”).delegate('LIA','click',函数(事件){
event.preventDefault();
id=$(this.attr(“数据文件夹”);
levels.selected=$(this.nexist('ul').attr(“数据级别”);
folders.selected=id;
index=hierarchy.indexOf(levels.selected);
如果(索引==-1){
层次结构。推送(级别。选择);
}
if(levels.selected对于(var i=levels.selected;iyou可以通过设置特定url并设置您自己的数据来模拟预期回报来模拟json。请看,是的,这就是我的意思。但我必须从数据库中获取数据,这意味着对几个类方法进行一些更改,运行它们,获取代码,更改ID。为ea漂洗并重复ch文件夹及其所有从属文件夹。