经过在论坛里的的帮助花费一天的操作终于实现了多层树。截图如下
列表树4.jpg
附上主要代码
<script type="text/javascript">
function StartHidden(el){
var tr = el.parentElement.parentElement;
var table = tr.parentElement.parentElement;
for(var i=0; i< table.rows.length;i++){
var trCurrent = table.rows(i);
if(trCurrent.cells(0).style.paddingLeft.indexOf("px")>0){
trCurrent.style.display="none";
}else{
trCurrent.style.display="";
}
}
}
function ExpandCollapse(el){
var tr = el.parentElement.parentElement;
var tbl = tr.parentElement.parentElement;
if(el.src.indexOf("minus")==-1){
el.src = "/p2pd/gfImg/PropertyGroup_"+ "minus.gif";
}else{
el.src = "/p2pd/gfImg/PropertyGroup_"+ "plus.gif";
}
//alert(el.src );
for(var i=tr.rowIndex +1; i<tbl.rows.length; i++){
var trCurrent = tbl.rows(i);
if(trCurrent.cells(0).getElementsByTagName("IMG").length >0){
if(tr.cells(0).style.paddingLeft==""&& trCurrent.cells(0).style.paddingLeft == "20px"){
if(el.src.indexOf("minus") ==-1){
trCurrent.cells(0).getElementsByTagName("IMG").item(0).src = "/p2pd/gfImg/PropertyGroup_plus.gif";
}
}else if(tr.cells(0).style.paddingLeft==""&& trCurrent.cells(0).style.paddingLeft == "40px"){
if(el.src.indexOf("minus") ==-1){
trCurrent.cells(0).getElementsByTagName("IMG").item(0).src = "/p2pd/gfImg/PropertyGroup_plus.gif";
}
}else if(tr.cells(0).style.paddingLeft =="20px" && trCurrent.cells(0).style.paddingLeft == "40px" ){
trCurrent.cells(0).getElementsByTagName("IMG").item(0).src = "/p2pd/gfImg/PropertyGroup_plus.gif";
}else{
break;
}
}
if(tr.cells(0).style.paddingLeft==""){
if(trCurrent.cells(0).style.paddingLeft=="40px" && el.src.indexOf( "minus" ) >0){
trCurrent.style.display = "none";
}else if(trCurrent.cells(0).style.paddingLeft=="60px" && el.src.indexOf( "minus" ) >0){
trCurrent.style.display = "none";
}else if(el.src.indexOf( "minus" ) <0 && trCurrent.cells(0).style.paddingLeft != "" ){
trCurrent.style.display = "none";
}else {
trCurrent.style.display = "";
}
}
if(tr.cells(0).style.paddingLeft=="20px"){
if(trCurrent.cells(0).style.paddingLeft =="60px" && el.src.indexOf( "minus" ) >0){
trCurrent.style.display = "none";
}else if(el.src.indexOf( "minus" ) < 0 && trCurrent.cells(0).style.paddingLeft !="20px"){
trCurrent.style.display = "none";
}else {
trCurrent.style.display = "";
}
}
if(tr.cells(0).style.paddingLeft=="40px"){
if(trCurrent.cells(0).style.paddingLeft=="60px" && el.src.indexOf( "minus" ) >0){
trCurrent.style.display = "";
}else{
trCurrent.style.display = "none";
}
}
}
}
</script>
收起