JQTreeTable中的一个小问题

时间:2022-02-28 17:36:24

      JQtreeTable是一个很意思的JQuery插件,它用一个数字数组决定树形表格的层级关系,使用起来很简单,在项目中应用的时候发现了个问题,就是当嵌套在其它表格中时,点击折叠会把整个树形表格全部隐藏,原因也很简单,它在隐藏树枝时把承载树形表格的行tr上加上了一个用来隐藏的样式,只要改一下源代码就可以了。

 collapseKids = function(num, last) {//Recursively collapses all children and their children and change icon
        jq("#" + tid + num).attr("src", (last) ? opts.lastShutImg : opts.shutImg);
        for (var x = 0, xl = mapa[num].length; x < xl; x++) {
            var mnx = mapa[num][x];
            var collspaseds = jq("#" + tid + mnx).parents("#"+tid+" tr");//.parents("tr").addClass("collapsed");
            collspaseds.addClass("collapsed");
            if (mapa[mnx]) {//If it is a parent
                arguments.callee(mnx, (x == xl - 1));
            }
        }
    }

 找到collpasekids这个函数,addClass那段代码改一下就行了(红字部分,绿的是原有的代码)。

//jq(this).children("td").eq(4).prepend("["+((mapa[i+1])? mapa[i+1]: "Child")+"]");//REMOVE THIS for production

还有用的时候不要忘把上面那行代码注释掉哟。大概在79行。否则会在表格第四列生成一些你不需要的东东。

下载地址:http://www.hanpau.com/index.php?page=jqtreetable

应用参考:http://www.cnblogs.com/luluping/archive/2009/06/19/1506424.html