亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? dhtmlxtreegrid.js

?? dhtmlxGrid 是跨瀏覽器的 JavaScript 表格控制組件(Grid Control)
?? JS
?? 第 1 頁 / 共 2 頁
字號:
        if ((this.er)||(this.grid._edtc)) return;
        this.er=this.cell.childNodes[0];
        this.er=this.er.childNodes[this.er.childNodes.length-1];
        this.val=this.er.innerHTML;
        this.er.innerHTML="<textarea class='dhx_combo_edit' type='text' style='height:"+(this.cell.offsetHeight-6)+"px; width:100%; border:0px; margin:0px; padding:0px; padding-top:"+(_isFF?1:2)+"px; overflow:hidden; font-size:12px; font-family:Arial;'></textarea>";
        if (_isFF)         this.er.style.top="1px";
        this.er.className+=" editable";
        this.er.firstChild.onclick = function(e){(e||event).cancelBubble = true};
        this.er.firstChild.value=this.val;
        this.er.firstChild.focus();
    }
	this.detach = function(){
        if (!this.er) return;
            this.er.innerHTML=this.er.firstChild.value;
            this.er.className=this.er.className.replace("editable","");
            var z=(this.val==this.er.innerHMTL);
            if (_isFF) this.er.style.top="2px";
            this.er=null;
        return (z);
    }
	this.getValue = function(){
		//alert(this.cell)
		var kidsColl = this.cell.childNodes[0].childNodes;
		for(var i=0;i<kidsColl.length;i++){
			//alert("value: "+kidsColl[i].tagName)
			if(kidsColl[i].id=='nodeval')
				return kidsColl[i].innerHTML;
		}
	}
    /**
    *	@desc: set label of treegrid item
    *	@param: content - new text of label
    *	@type: private
    */
	this.setValueA = function(content){
		//alert(this.cell)
		var kidsColl = this.cell.childNodes[0].childNodes;
		for(var i=0;i<kidsColl.length;i++){
			//alert("value: "+kidsColl[i].tagName)
			if(kidsColl[i].id=='nodeval')
				kidsColl[i].innerHTML=content;
		}
    }
    /**
    *	@desc: get image of treegrid item
    *	@param: content - new text of label
    *	@type: private
    */
	this.setImage = function(url){
		var z=this.cell.childNodes[0];
        var img=z.childNodes[z.childNodes.length-2];
        img.src=url;
	}

    /**
    *	@desc: set image of treegrid item
    *	@param: content - new text of label
    *	@type: private
    */
	this.getImage = function(){
		var z=this.cell.childNodes[0];
        var img=z.childNodes[z.childNodes.length-2];
        return img.src;
	}

	/**
	*	@desc: sets text representation of cell ( setLabel doesn't triger math calculations as setValue do)
	*	@param: val - new value
	*	@type: public
	*/
	this.setLabel = function(val){
						this.setValueA(val);
				}

    /**
    *	@desc: set value of grid item
    *	@param: val  - new value (for treegrid this method only used while adding new rows)
    *	@type: private
    */
	this.setValue = function(val){
					var valAr = val.split("^");//parent_id^Label^children^im0^im1^im2
					this.cell.parentNode.parent_id = valAr[0];
                    if (!this.grid.kidsXmlFile) valAr[2]=0;
                    else
                       this.cell.parentNode._xml_await=(valAr[2]!=0);

  					this.cell.parentNode.has_kids = valAr[2];

					//this.cell.parentNode._xml_wait = true;
					var pRow = this.grid.getRowById(valAr[0]);
					if(pRow==null){//check detached rows
						pRow = this.grid.loadedKidsHash.get("hashOfParents").get(valAr[0])
						//if(pRow!=null)
						//	alert(pRow+"::"+pRow.childNodes.length)
					}

					var preStr = "";//prenode html
					var node = "";//node html (two images and label)
					if(pRow!=null){//not zero level
						//alert(pRow.cells.length)

						var level = (pRow.childNodes[cell._cellIndex].firstChild.childNodes.length-1)-1
						for(var i=0;i<level;i++)
							preStr += "<span class='space'><img src='"+this.grid.imgURL+"/blanc.gif' height='1px' class='space'></span>"

                        this.grid.has_kids_inc(pRow,this.cell._cellIndex);

						//alert("aga")
						if(pRow.expand!=""){
							//this.cell.parentNode.style.display = "none"
							this.grid.doOnRowAdded = function(row){
										if(row.has_kids>0){
											var parentsHash = this.loadedKidsHash.get("hashOfParents")
											parentsHash.put(row.idd,row)
											this.loadedKidsHash.put("hashOfParents",parentsHash)
										}
										var kidsAr = this.loadedKidsHash.get(row.parent_id)
										if(kidsAr==null){
											var kidsAr = new Array(0)
										}

										kidsAr[kidsAr.length] = row.parentNode.removeChild(row);
                                        this.rowsCol._dhx_removeAt(this.rowsCol._dhx_find(row));
										this.loadedKidsHash.put(row.parent_id,kidsAr)
							}
						}else{
							this.grid.doOnRowAdded = function(row){}
							pRow.childNodes[this.cell._cellIndex].innerHTML = pRow.childNodes[this.cell._cellIndex].innerHTML.replace(/\/plus\.gif/,"/minus.gif")
                            var kidsAr = this.grid.loadedKidsHash.get(pRow.idd)

                            if (this._dhkPos)
                                kidsAr_dhx_insertAt(this._dhkPos,this.cell.parentNode);
                            else
                                kidsAr[kidsAr.length] = this.cell.parentNode;

                            this.grid.loadedKidsHash.put(pRow.idd,kidsAr)
						}

					}else{//zero level
						this.grid.doOnRowAdded = function(row){}
						preStr = "";
					}
					//if has children
				 	if(valAr[2]!="" && valAr[2]!=0)
						node+="<img src='"+this.grid.imgURL+"/plus.gif";
                    else
                        node+="<img src='"+this.grid.imgURL+"/blank.gif";
						node+="' align='absmiddle' onclick='this."+(_isKHTML?"":"parentNode.")+"parentNode.parentNode.parentNode.parentNode.grid.doExpand(this);event.cancelBubble=true;'>";
						//this.grid.collapseKids(this.cell.parentNode)


				   node+="<img src='"+this.grid.imgURL+"/"+valAr[3]+"' align='absmiddle' "+(this.grid._img_height?(" height=\""+this.grid._img_height+"\""):"")+(this.grid._img_width?(" width=\""+this.grid._img_width+"\""):"")+" >";
				   node+="<span "+(_isFF?"style='position:relative; top:2px;'":"")+"id='nodeval'>"+valAr[1]+"</span>"

                 /*   if (this.grid.multiLine)
    				    this.cell.innerHTML = "<div style=' overflow:hidden; '>"+preStr+""+node+"</div>";
                    else*/
                        this.cell.innerHTML = "<div style=' overflow:hidden; white-space : nowrap; height:20px;'>"+preStr+""+node+"</div>";

                    this.cell._aimage=valAr[3];
                    if (_isKHTML) this.cell.vAlign="top";
                    this.cell.parentNode.has_kids=0;
				}
	
}
eXcell_tree.prototype = new eXcell;

    /**
    *	@desc: correct visual representation of tree grid item  - initialisation part
    *	@param: r2  - row object
    *	@type: private
    */
dhtmlXGridObject.prototype._fixLevel=function(r2){
     var pRow=this.getRowById(r2.parent_id);

     var trcol=this.cellType._dhx_find("tree");

     this.has_kids_inc(pRow,trcol);

     if (pRow){
     pRow.childNodes[trcol].innerHTML = pRow.childNodes[trcol].innerHTML.replace(/\/plus\.gif/,"/minus.gif")
     pRow.expand = "";
     }

     var preStr="";
     if (!pRow) var level=0;
     else
  	 var level = (pRow.childNodes[trcol].firstChild.childNodes.length-1)-1;
	 for(var i=0;i<level;i++)
		 preStr += "<span class='space'><img src='' height='1' class='space'></span>"


    this._fixLevel2(r2,preStr,trcol);
        };

    /**
    *	@desc: correct visual representation of tree grid item - recursive part
    *	@param: r2  - row object
    *	@param: preStr  - string with corrected html
    *	@param: trcol  - index of treeGrid column
    *	@type: private
    */
dhtmlXGridObject.prototype._fixLevel2=function(r2,preStr,trcol){

     var z=r2.childNodes[trcol].firstChild.innerHTML;
     z=preStr+z.replace(/<(SPAN)[^>]*(><IMG)[^>]*(><\/SPAN>)/gi,"");
     r2.childNodes[trcol].firstChild.innerHTML=z;

     var a=this.loadedKidsHash.get(r2.idd);
     if (a){
     for (var i=0; i<a.length; i++)
         this._fixLevel2(a[i],preStr+"<span class='space'><img src='' height='1' class='space'></span>",trcol);
    this.loadedKidsHash.put(r2.idd,a);
    }

        };

    /**
    *	@desc: remove row from treegrid
    *	@param: node  - row object
    *	@type: private
    */
dhtmlXGridObject.prototype._removeTrGrRow=function(node){
			var parent_id = node.parent_id
			this.collapseKids(node)
            //not sure about purpose of logic below,
            //but seems that is works for only one level of inheritance
			var tmpAr = this.loadedKidsHash.get(parent_id)
			if(tmpAr!=null)
				tmpAr._dhx_removeAt(tmpAr._dhx_find(node))
			this.loadedKidsHash.remove(node.idd)
            //still not enough - must delete all child nodes as well
            var noda=node.nextSibling;
            this._removeTrGrRowRec(node.idd);

            pRow=this.getRowById(parent_id);
            if (!pRow) return;
            this.has_kids_dec(pRow);

		}

    /**
    *	@desc: remove child rows from treegrid
    *	@param: id  - parent row id
    *	@type: private
    */
dhtmlXGridObject.prototype._removeTrGrRowRec=function(id){
            //I think it relative slow
            //more than that, it based on
            var newa=new Array();
            for (var i=0; i<this.rowsCol.length; i++)
                if (id==this.rowsCol[i].parent_id)
                {
                    newa[newa.length]=this.rowsCol[i].idd;
                    this.rowsAr[this.rowsCol[i].idd] = null;
                    this.rowsCol._dhx_removeAt(i);
                    i--;
                }
            if (newa.length)
                for (var i=0; i<newa.length; newa++)
                    this._removeTrGrRowRec(newa[i]);
}


/**
*   @desc:  count rows inside branch
*   @type:  private
*/
dhtmlXGridObject.prototype._countBranchLength=function(ind){
    if (!this.rowsCol[ind+1]) return 1;
    if (this.rowsCol[ind+1].parent_id!=this.rowsCol[ind].idd) return 1;
    var count=1; var i=1;
    while   ((this.rowsCol[ind+count])&&(this.rowsCol[ind+count].parent_id==this.rowsCol[ind].idd)){
        count+=this._countBranchLength(ind+count);
        }
    return count;
}

/**
*	@desc: expand row
*	@param: rowId - id of row
*	@type:  public
*   @edition: Professional
*   @topic: 7
*/
dhtmlXGridObject.prototype.openItem=function(rowId){
        var x=this.getRowById(rowId);
        if (!x) return;
        this._openItem(x);
}


dhtmlXGridObject.prototype._openItem=function(x){
        var y=this.getRowById(x.parent_id);
        if (y)
            if (y.expand!="") this._openItem(y);
        this.expandKids(x);
}



dhtmlXGridObject.prototype._addRowClassic=dhtmlXGridObject.prototype.addRow;

    /**
    *	@desc: add new row to treeGrid
    *	@param: new_id  - new row id
    *	@param: text  - array of row label
    *	@param: ind  - position of row (set to null, for using parentId)
    *	@param: parent_id  - id of parent row
    *	@param: img  - img url for new row
    *	@param: child - child flag [optional]
    *	@type: public
    *   @edition: Professional
    */
dhtmlXGridObject.prototype.addRow=function(new_id,text,ind,parent_id,img,child){
     var trcol=this.cellType._dhx_find("tree");
     var last_row=null;
     if ((trcol!=-1)&&((text[trcol]||"").search(/\^/gi)==-1)){
        var def=text[trcol];
        var d=(parent_id||"0").toString().split(",");
        for (var i=0; i<d.length; i++){
            text[trcol]=d[i]+"^"+def+"^"+(child?1:0)+"^"+(img||"leaf.gif");
                if (d[i]!=0)
                if ((!ind)||(ind==0)){
                    ind=this.getRowIndex(d[i]);
					if (this.rowsCol[ind].expand=="") ind+=this._countBranchLength(ind);
                    }
              /*  var z=0;
                for (var i=0; i<this.rowsCol.length; i++)
                    z+="<div>"+this.rowsCol[i].idd+"</div>";
                document.getElementById("output_a").innerHTML=z;*/
            last_row=this._addRowClassic(new_id,text,((!parent_id)&&(!ind)&&(ind!="0"))?window.undefined:ind);
            }
        return last_row;
     }

     return this._addRowClassic(new_id,text,ind);

}





?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久久久久网| 欧美艳星brazzers| 国产日韩欧美综合在线| 国产69精品一区二区亚洲孕妇| 久久午夜电影网| 成人网在线播放| 亚洲综合999| 日韩欧美中文字幕精品| 国产在线麻豆精品观看| 国产精品视频一二| 在线精品亚洲一区二区不卡| 日韩影院免费视频| 久久中文娱乐网| 成人免费va视频| 亚洲午夜精品久久久久久久久| 91精品国产一区二区人妖| 精品一区二区三区av| 精品一区二区三区免费| 日韩美女视频一区二区| 4438x亚洲最大成人网| 国产乱码精品一区二区三区av| 国产精品美女久久久久aⅴ| 91国产免费观看| 蜜桃精品视频在线观看| 国产精品嫩草影院com| 在线观看日韩国产| 麻豆久久一区二区| 日韩伦理av电影| 日韩一区二区电影在线| 99久久精品免费| 老司机精品视频在线| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 麻豆成人av在线| 中文字幕中文字幕在线一区| 欧美精品在线一区二区三区| 成人性生交大片免费看视频在线| 亚洲国产精品久久人人爱蜜臀| 精品国产乱码久久久久久夜甘婷婷| 91在线观看视频| 极品少妇一区二区| 亚洲成人激情自拍| 国产精品国产自产拍高清av| 欧美一区二区三区视频免费播放| 97精品国产露脸对白| 老司机免费视频一区二区| av综合在线播放| 麻豆精品蜜桃视频网站| 亚洲成年人网站在线观看| 中文字幕精品一区二区三区精品| 欧美一区二区三区公司| 色吊一区二区三区| aa级大片欧美| 大陆成人av片| 国产精品一区二区果冻传媒| 免费的国产精品| 偷窥国产亚洲免费视频| 亚洲精品免费在线观看| 欧美极品美女视频| 精品少妇一区二区三区视频免付费| 在线观看不卡一区| av电影一区二区| 成人黄色片在线观看| 国产精品99久久久久久宅男| 久久成人免费网| 日韩国产精品久久| 日本伊人精品一区二区三区观看方式 | 国产激情一区二区三区四区| 美女尤物国产一区| 人妖欧美一区二区| 免费观看在线综合| 青青青伊人色综合久久| 日本亚洲三级在线| 视频一区二区三区入口| 天天av天天翘天天综合网色鬼国产| 亚洲免费在线看| 亚洲另类色综合网站| 亚洲免费视频成人| 一区二区日韩电影| 亚洲成人免费在线| 日韩精品一区第一页| 日本免费新一区视频| 五月婷婷另类国产| 蜜桃精品视频在线| 精彩视频一区二区三区| 国产精品一线二线三线精华| 国产成人免费视| 99久久99久久精品免费看蜜桃| www.久久精品| 在线观看成人小视频| 56国语精品自产拍在线观看| 日韩一区二区影院| 精品1区2区在线观看| 欧美经典一区二区| 一区二区免费看| 视频一区二区中文字幕| 国内精品视频一区二区三区八戒| 国产精品888| 91猫先生在线| 欧美高清激情brazzers| 久久综合av免费| 亚洲人123区| 日韩精品一级二级| 国产成人在线视频网址| 日本道精品一区二区三区| 91.com视频| 久久精品欧美一区二区三区不卡| 亚洲欧美综合色| 丝袜亚洲另类欧美| 国产精品一区在线| 欧美专区日韩专区| 精品久久五月天| 亚洲三级小视频| 婷婷一区二区三区| 成人午夜又粗又硬又大| 欧美日韩黄色一区二区| 2020日本不卡一区二区视频| 亚洲男人的天堂在线aⅴ视频| 日韩精品三区四区| 成人91在线观看| 欧美嫩在线观看| 国产欧美1区2区3区| 无吗不卡中文字幕| 99久久精品99国产精品| 欧美一区二区不卡视频| 亚洲婷婷在线视频| 国产一区免费电影| 欧美精选一区二区| |精品福利一区二区三区| 久久97超碰国产精品超碰| 色菇凉天天综合网| 国产精品视频yy9299一区| 免费视频最近日韩| 欧美丝袜丝交足nylons| 欧美国产激情一区二区三区蜜月| 午夜激情一区二区| 91美女片黄在线观看91美女| 久久久www成人免费无遮挡大片 | 日韩一区和二区| 一区二区三区欧美久久| 国产999精品久久久久久 | 国产欧美一区二区精品秋霞影院| 香蕉成人伊视频在线观看| av不卡在线观看| 国产三级欧美三级日产三级99| 亚洲国产毛片aaaaa无费看| a亚洲天堂av| 国产香蕉久久精品综合网| 久久 天天综合| 欧美久久高跟鞋激| 亚洲国产精品视频| 色国产综合视频| 亚洲精品中文在线观看| 菠萝蜜视频在线观看一区| 欧美国产日本韩| 国产91露脸合集magnet| 久久婷婷久久一区二区三区| 蜜臀av亚洲一区中文字幕| 3d动漫精品啪啪1区2区免费| 五月天中文字幕一区二区| 在线视频你懂得一区| 亚洲精品国久久99热| 色综合天天综合网天天狠天天| 国产精品毛片无遮挡高清| 国产99精品在线观看| 中文字幕国产一区| 大陆成人av片| 国产精品福利一区| av高清不卡在线| 亚洲精品成a人| 欧美视频一区二区三区在线观看| 亚洲免费观看高清完整版在线观看| 91在线观看成人| 亚洲图片一区二区| 51精品久久久久久久蜜臀| 美女高潮久久久| 久久久午夜精品| 成人国产亚洲欧美成人综合网| 国产精品国产三级国产专播品爱网| 成人av免费网站| 亚洲女子a中天字幕| 欧美性生交片4| 日韩激情一二三区| 久久久久久综合| 成人国产精品免费观看动漫| 亚洲激情图片小说视频| 欧美三级中文字幕| 美腿丝袜亚洲综合| 欧美国产国产综合| 91麻豆产精品久久久久久| 亚洲一区二区在线播放相泽 | 欧美影院一区二区三区| 天天操天天干天天综合网| 欧美精品一区二区精品网| 成人免费av在线| 亚洲香肠在线观看| 精品国产乱码久久久久久老虎| 豆国产96在线|亚洲| 一区二区三区四区av| 日韩亚洲欧美成人一区| 国产xxx精品视频大全|