⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ig_webgrid_an.js

📁 研究怎样通过手写代码来完成自动生成代码
💻 JS
📖 第 1 页 / 共 2 页
字号:
			{
				lrObj.ParentRow.ChildRowsCount++;
				lrObj.ParentRow.VisChildRowsCount++;
			}
		}
		if(altRow)
			row.setAttribute("alt","true");
		if(lastRow && rows[rows.length-1].parentNode.tagName=="TFOOT")
			table.tBodies[0].insertBefore(row,rows[rows.length-1]);
		else
			table.tBodies[0].appendChild(row);
		if(!clickRow)
		{
			delete g.Rows;
			g.Rows=new igtbl_Rows(null,g.Bands[0],null);
			g.Rows.length=1;
			g.Rows.rows[0]=null;
		}
		else if(!lastRow)
		{
			clickRow.ChildRowsCount=1;
			clickRow.VisChildRowsCount=1;
			clickRow.Rows=new igtbl_Rows(null,g.Bands[clickRow.Band.Index+1],clickRow);
			clickRow.Rows.length=1;
			clickRow.Rows.rows[0]=null;
			clickRow.Expandable=true;
		}
		var phCellNo=0;
		for(var i=0;i<g.Bands[bandNo].Columns.length+fac;i++)
		{
			if(i>=fac && !g.Bands[bandNo].Columns[i-fac].hasCells())
				continue;
			var cell=document.createElement("td");
			var cn;
			if(lastRow)
			{
				cn=row.id.split("_");
				if(i>=fac)
				{
					cn[0]=gn+"rc";
					cn[cn.length-1]--;
					cn[cn.length]=i-fac;
				}
				else if(lastRow.cells[phCellNo].id)
				{
					cn[0]=gn+"l";
					cn[cn.length-1]--;
				}
			}
			else
			{
				if(clickRow)
				{
					cn=clickRow.Element.id.split("_");
					cn[0]=gn+"rc";
					cn[cn.length]=-1;
					cn[cn.length]=i-fac;
				}
				else
				{
					cn=new Array();
					cn[0]=gn+"rc";
					cn[1]=(g.AllowPaging && g.EIRM?(g.CurrentPageIndex-1)*g.PageSize:0)-1;
					cn[2]=i-fac;
				}
			}
			if(g.Bands[bandNo].DefaultRowHeight!="")
				cell.height=g.Bands[bandNo].DefaultRowHeight;
			if(g.Bands.length>1 && phCellNo==0)
			{
				cell.className=igtbl_getExpAreaClass(gn,bandNo);
				cell.style.borderWidth=0;
				cell.style.textAlign="center";
				cell.style.padding=0;
				cell.style.cursor="default";
				cell.innerHTML="<img src='"+g.BlankImage+"' border=0 imgType='blank' style='visibility:hidden;'>";
			}
			else if(igtbl_getRowSelectors(gn,bandNo)==1 && (g.Bands.length>1 && phCellNo==1 || phCellNo==0))
			{
				cell.className=igtbl_getRowLabelClass(gn,bandNo);
				if(lastRow)
				{
					cn[cn.length-1]++;
					cell.id=cn.join("_");
				}
				else
				{
					if(clickRow)
					{
						cn=clickRow.Element.id.split("_");
						cn[0]=gn+"l";
						cn[cn.length]=0;
						cell.id=cn.join("_");
					}
					else
						cell.id=gn+"l_"+(g.AllowPaging && g.EIRM?(g.CurrentPageIndex-1)*g.PageSize:0);
				}
				cell.innerHTML="<img src='"+g.BlankImage+"' border=0 imgType='blank' style='visibility:hidden;'>";
				cell.style.textAlign="center";
			}
			else
			{
				var columnNo=i-fac;
				var column=g.Bands[bandNo].Columns[columnNo];
				if(column.ServerOnly)
				{
					phCellNo++;
					delete cn;
					continue;
				}
				cn[cn.length-2]++;
				cell.id=cn.join("_");
				if(lastRow && lastRow.getAttribute("level"))
				{
					var cl=lastRow.getAttribute("level").split("_");
					cl[cl.length]=i-fac;
					cl[cl.length-2]=parseInt(cl[cl.length-2],10)+1;
					cell.setAttribute("level",cl.join("_"));
				}
				var cwk=cell;
				if(g.UseFixedHeaders && !column.Fixed)
				{
					var div=document.createElement("div");
					div.className=g.Id+"-cds";
					cell.appendChild(div);
					cwk=div;
					div=document.createElement("div");
					cwk.appendChild(div);
					cwk=div;
				}
				if(altRow)
					cwk.className=g.Bands[bandNo].getAltClass();
				else
					cwk.className=g.Bands[bandNo].getItemClass();
				if(column.CssClass)
					cwk.className+=(cwk.className.length>0?" ":"")+column.CssClass;
				if(column.Style)
					cwk.style.cssText=column.Style;
				if(g.Bands[bandNo].Columns[i-fac].Hidden)
					cell.style.display='none';					
				var it_str="";
				if(!column.Wrap)
					it_str+="<nobr>";
				switch(column.ColumnType)
				{
					case 3:
						it_str+="<input type=checkbox"+(igtbl_getAllowUpdate(gn,bandNo,columnNo)==1?"":" disabled")+" on"+(ig_csom.IsIE?"property":"")+"change='igtbl_chkBoxChange(event,\""+gn+"\");'>";
						break;
					case 7:
						var bc=g.Bands[bandNo].Columns[columnNo].ButtonClass;
						var bs=g.Bands[bandNo].Columns[columnNo].ButtonStyle;
						if(column.CellButtonDisplay==1)
							it_str+="<input type=button style='"+bs+"' onclick=\"igtbl_colButtonClick(event,'"+gn+"');\""+(bc==""?"":" class='"+bc+"'")+">";
						else
							it_str+="&nbsp;";
						break;
					case 9:
						it_str+="<a href=''>&nbsp;</a>";
						break;
					default:
						it_str+="&nbsp;";
						break;
				}
				if(!column.Wrap)
					it_str+="</nobr>";
				cwk.innerHTML=it_str;
			}
			row.appendChild(cell);
			phCellNo++;
			delete cn;
		}
		rowObj=igtbl_getRowById(row.id);
		if(lastRow && lastRow.getAttribute("level"))
		{
			var rl=lastRow.getAttribute("level").split("_");
			rl[rl.length-1]=parseInt(rl[rl.length-1],10)+1;
			row.setAttribute("level",rl.join("_"));
		}
		else if(clickRow && clickRow.Element.getAttribute("level"))
		{
			var rl=clickRow.Element.getAttribute("level").split("_");
			rl[rl.length]=0;
			row.setAttribute("level",rl.join("_"));
		}
		var parRow=table.parentNode.parentNode.previousSibling;
		if(parRow && parRow.childNodes[0].childNodes.length>0 && parRow.childNodes[0].childNodes[0].tagName=="IMG" && parRow.childNodes[0].childNodes[0].style.display=="none")
			parRow.childNodes[0].childNodes[0].style.display="";
		g.recordChange("AddedRows",rowObj);
		for(var i=0;i<rowObj.Band.Columns.length;i++)
		{
			var cellObj=rowObj.getCell(i);
			cellObj.setValue(cellObj.Column.getValueFromString(cellObj.Column.DefaultValue));
		}
		if(bandNo>0 && table.parentNode.parentNode.style.display=="none")
			igtbl_toggleRow(gn,table.parentNode.parentNode.previousSibling.id,table.parentNode.parentNode.id);
		igtbl_setActiveRow(gn,row);
		igtbl_setNewRowImg(gn,row);
		g._calculateStationaryHeader();
		if(g.UseFixedHeaders)
			g.alignDivs();		
		igtbl_scrollToView(gn,row);
		igtbl_fireEvent(gn,g.Events.InitializeRow,"(\""+gn+"\",\""+row.id+"\");");
		igtbl_fireEvent(gn,g.Events.AfterRowInsert,"(\""+gn+"\",\""+row.id+"\");");
	}
	if(g.NeedPostBack)
		igtbl_doPostBack(gn,"");
	if(g._recalcRowNumbers)g._recalcRowNumbers(rowObj);	
	return rowObj;
}

function igtbl_addNewMouseOut(evnt,gn) 
{
	var se=igtbl_srcElement(evnt);
	if(se.tagName == "TD" && se.getAttribute("addNew"))
		igtbl_changeStyle(gn,se,null);
}

function igtbl_updateAddNewStatus()
{
}

function igtbl_updateAddNewBox(gn)
{
	var grid=igtbl_getGridById(gn);
	if(!grid.AddNewBoxVisible)
		return;
	var curBandNo=-1;
	var expandable=false;
	var curRow=null;
	var curRowObj=null;
	if(grid.ActiveCell!="")
	{
		var cell=grid.getActiveCell();
		curRowObj=cell.Row;
		curRow=curRowObj.Element;
		curBandNo=curRowObj.Band.Index;
		if(curRowObj.Expandable && curRowObj.HiddenElement)
			expandable=true;
	}
	else if(grid.ActiveRow!="")
	{
		curRowObj=grid.getActiveRow();
		curRow=curRowObj.Element;
		curBandNo=curRowObj.Band.Index;
		if(curRowObj.Expandable && curRowObj.HiddenElement)
			expandable=true;
	}
	else
	{
		curRowObj=grid.Rows.getRow(0);
		if(curRowObj)
			curRow=curRowObj.Element;
	}
	for(var i=0;i<grid.Bands.length;i++)
	{
		if(grid.Bands[i].AllowAddNew==2 || grid.Bands[i].AllowAddNew==0 && grid.AllowAddNew!=1 || grid.Bands[i].IsGrouped)
			igtbl_setDisabled(grid.Bands[i].addNewElem,true);
		else if(curBandNo==-1 && i==0 || i<=curBandNo || i==curBandNo+1 && !grid.Bands[i].IsGrouped && !(grid.Bands[curBandNo].IsGrouped && curRowObj.GroupByRow) && (grid.Bands[curBandNo].getExpandable()==1 || curRowObj.getExpanded()) && (!curRow.getAttribute("showExpand") || curRowObj.HiddenElement))
		{
			if(i==curBandNo+1)
			{
				if(expandable)
 					grid.Bands[i].curTable=curRow.nextSibling.childNodes[grid.Bands[i-1].firstActiveCell].childNodes[0];
 				else if(i==0)
 					grid.Bands[i].curTable=grid.Element;
 				else
 					grid.Bands[i].curTable=null;
			}
			else
			{
				var cr=curRowObj;
				for(var j=curBandNo;j>=i;j--)
				{
					grid.Bands[j].curTable=cr?cr.Element.parentNode.parentNode:null;					
					if(cr)
					do
					{						
						cr=cr.ParentRow;
					}while(cr && cr.GroupByRow)
				}
			}
			igtbl_setDisabled(grid.Bands[i].addNewElem,false);
		}
		else
			igtbl_setDisabled(grid.Bands[i].addNewElem,true);
	}
}

function igtbl_cancelNoMoreRows(gn)
{
	var g=igtbl_getGridById(gn);
	if(!g) return;
	g.noMoreRows=false;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -