文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

根据ID、父ID来排序的JS树

2023-06-03 03:08

关注
根据ID、父ID来排序的JS树

// 得到接点
var datas = sFileName.selectNodes("datas/data") ;
var list = new Array() ;
var data = new Array() ;
for( var i = 0 ; i < datas.length ; i++ ){
if( datas[i].getAttribute( "类型" ) == "文件夹" ){
list.push( datas[i] ) ;
} else {
data.push( datas[i] ) ;
}
}
// 设置初始的父号
var fatherNo = -1 ;
// 显示目录
showTreeList( tree , fatherNo , datas ,list , data , null ,"") ;

// 改变图片和隐藏显示DIV
function expand( div , img ){
if( div.style.display == "block" ){
div.style.display = "none" ;
img.src = "images/pic/skin_NLine/closed.gif" ;
} else {
div.style.display = "block" ;
img.src = "http://blog.itpub.net/13428095/viewspace-1000879/images/pic/skin_NLine/opened.gif" ;
}

}

// 递归显示树
function showTreeList( tree , fatherNo , datas ,list , data , currentNode , listStrblank2 ) {
// 创建一个DIV
var treediv = document.createElement("div");
var isdisplay = "1" //节点的状态 默认为显示状态
treediv.id = "treediv" + isdisplay + fatherNo ;
if( currentNode ){
tree.innerHTML += listStrblank2 + "" + currentNode.getAttribute( "组名称" ) + "
" ;
}
treediv.style.display = "block";
document.getElementById("MonitorObject").appendChild( treediv );

// 如果currentNode存在则显示组名称

var l = isChildList( fatherNo , list ) ;
// 如果有子目录,则在次循环.没有则判断是否有信息
if( l.length != 0 ){
listStrblank2 += "  " ;
for( var j = 0 ; j < l.length ; j++ ){
showTreeList( treediv , l[j].getAttribute( "id" ) , datas ,list , data , l[j] , listStrblank2 ) ;
}
}

var d = isChildData( fatherNo , data ) ;
// 如果有子信息,则在次循环.没有则判断是否有信息
if( d.length != 0 ){
for( var j = 0 ; j < d.length ; j++ ) {
treediv.innerHTML += listStrblank2 + "" + "美女" + "
" ;
}
}
tree.appendChild(treediv) ;
}

// 判断是否有子文件夹
function isChildList( fatherNo , lists ){
// 定义一个保存子目录的对象
var l = new Array() ;
// 循环找其子目录
for( var i = 0 ; i < lists.length ; i++ ) {
// 如果父编号和父号相同,则保存
if( lists[i].getAttribute( "父编号" ) == fatherNo ) {
l.push( lists[i] ) ;
}
}
return l ;
}

// 判断是否有子信息
function isChildData( fatherNo , datas ){
var d = new Array() ;
for( var i = 0 ; i < datas.length ; i++ ) {
if( datas[i].getAttribute( "父编号" ) == fatherNo ) {
d.push( datas[i] ) ;
//alert(datas[i].getAttribute( "对象属性" )) ;
}
}
return d ;
}
根据ID、父ID来排序的JS树
[@more@]
阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯