精品推荐
JSP页面文件目录树源码(递归算法)
日期:2008年5月15日 作者: 查看:[大字体
中字体 小字体 ]
if(n > tree_ar[i+1][0]) { // 若期望层次大于当前层次,结束本层次返回上一层次。 s += "</td></tr></table>"; return tree_ar[i+1][0]; } if(n < tree_ar[i+1][0]) { // 若期望层次小于当前层次,递归进入下一层次。 s += "<tr style='display:none' ><td "; if(tree_ar[i][2]==true) { //如果有下个兄弟节点,则画兄弟节点间的连线 s+="background='images/line.gif' border=0 align='absmiddle'"; } s+="></td><td>"; var m = tree(tree_ar[++i][0]); s += "</td></tr>"; if(m < n) { // 当递归返回值小于当前层次期望值时,将产生连续的返回动作 s += "</table>"; return m; } } } s += "</table>"; return s; } </script> <script for=pad event=onclick> // 分枝节点的点击响应 v = this.parentElement.rows[this.rowIndex+1].style; if(v.display == 'block') { v.display = 'none'; this.cells[0].innerHTML = "<IMG src=http://www.webjx.com/htmldata/sort/images/midclosedfolder.gif'border=0 align='absmiddle'><IMG src=http://www.webjx.com/htmldata/sort/images/close.gif'border=0 align='absmiddle'>"; view.innerHTML = "";// 自行修改为参数数组定义的闭合动作 }else { v.display = 'block'; this.cells[0].innerHTML = "<IMG src=http://www.webjx.com/htmldata/sort/images/midopenedfolder.gif'border=0 align='absmiddle'><IMG src=http://www.webjx.com/htmldata/sort/images/open.gif'border=0 align='absmiddle'>"; // view.innerHTML = "<b>"+tree_ar[this.value][1]+"</b>"; // 自行修改为参数数组定义的展开动作 } /** * 以下代码用于关闭已展开的其他分枝 * 如需自行关闭展开的分枝则从这里直接返回或删去这段代码 */ if(! tree_ar[this.value].type) //如该节点为首次进入,则记录所在层次信息 genTreeInfo(this); var n = 1*this.value+1; for(i=n;i<tree_ar.length-1;i++) { // 关闭排列在当前节点之后的树 if(tree_ar[i].type == "pad") { tree_ar[i].obj2.style.display = 'none'; tree_ar[i].obj1.cells[0].innerHTML = "<IMG src=http://www.webjx.com/htmldata/sort/images/midclosedfolder.gif'border=0 align='absmiddle'><IMG src=http://www.webjx.com/htmldata/sort/images/close.gif'border=0 align='absmiddle'>"; } } while(tree_ar[--n][0] > 1); //回溯到当前树的起点 while(--n >= 0) // 关闭排列在当前树的起点之前的树 if(tree_ar[n].type == "pad") { tree_ar[n].obj2.style.display = 'none'; tree_ar[n].obj1.cells[0].innerHTML = "<IMG src=http://www.webjx.com/htmldata/sort/images/midclosedfolder.gif'border=0 align='absmiddle'><IMG src=http://www.webjx.com/htmldata/sort/images/open.gif'border=0 align='absmiddle'>"; } /** 记录层次信息,用以简化遍历树时的复杂的节点描述 **/ function genTreeInfo(o) { var el = o.parentElement;
复制本页网址和标题,发送给你QQ/Msn的好友一起分享
上一篇:JSP内建对象
下一篇:JSP连接sybase数据库中文显示问题终极解决办法
相关文章:
相关软件: