birt一点一滴系列之表格根据层级关系展开隐藏

<script type="text/javascript">
	var o = document.getElementById("div");
	while(o!=null){
		if(o.tagName=="TBODY")
			break;
		o = o.parentNode;
	}
	
	var gi=0;
	var ii=0;
	var arr=new Array();
	for(var i=1;i<o.children.length;i++){
		var ro = o.children[i];
		var c = "";
	
		ro.onmouseover = function(){
		
			c = this.style.backgroundColor;
			this.style.backgroundColor = "#F0F0F0";
		}
		ro.onmouseout = function(){
			this.style.backgroundColor = c;
		}
		
		if(ro.style.color=="navy"){
			ro.id=gi;
			gi++;
			
		}else{
			var vi=gi-1;
			ro.id=vi+"_"+ii;
			arr[ii]=ro;
			ii++;
			ro.style.display="none";
		}
	}
	
	for(var i=1;i<o.children.length;i++){
		var ro = o.children[i];
		ro.onclick = function(){
			gid=this.id;
			for(var j=0;j<arr.length;j++){
				iid=arr[j].id;
				

				if(iid.indexOf(gid+"_")!=-1){
					var oo = document.getElementById(iid);
					if(oo.style.display==""){
						oo.style.display="none";
					}else if(oo.style.display=="none"){
						oo.style.display="";
					}
				}
			}

			var tn = this.firstChild.firstChild.innerHTML;
			if(tn=="+"){
				this.firstChild.firstChild.innerHTML="-";
			}else if(tn=="-"){
				this.firstChild.firstChild.innerHTML="+";
			}
			
		}
	}
</script>
<div id="div"></div> 
 

在分组行OnRender中设置行颜色
this.getStyle().color="navy";

猜你喜欢

转载自hrj0130.iteye.com/blog/2213165