易截截图软件、单文件、免安装、纯绿色、仅160KB

JavaScript实现GridView相同行的合并

先看效果,合并前:
合并后:
实现源码:
// ******************************
//功能:用户合并GridView相同的行(前台显示的时候合并)
//时间:2009/08/12 14:59
//作者:Yzy
// ******************************
//参数说明:strGridId—数据控件名称;arrIndexCol—不清楚;arrMergeCol—要合并的列索引(从0开始);
// blHasHeader—表头是否参与合并;blHasFooter—表脚是否参与合并;blHasPageLine—是否保留最后一行数据不参与合并
function fcnAthosColumnMerge(strGridId, arrIndexCol, arrMergeCol, blHasHeader, blHasFooter, blHasPageLine)
{
var tbl = document.all[strGridId];
var iH = 0;
var iF = 0;

if(blHasHeader == true) iH++;
if(blHasFooter == true) iF++;
if(blHasPageLine == true) iF++;
tRows = tbl.children[0].children;
i0 = iH;
strKey = new Array(arrIndexCol.length);
strPrevKey = new Array(arrIndexCol.length);

for(ii=0; ii<arrIndexCol.length;ii++)
{
strKey[ii] = tRows[iH].children[arrIndexCol[ii]].innerText;
strPrevKey[ii] = strKey[ii];
}
for(i=iH+1;i<tRows.length-iF;i++)
{
blEqual = true;
for(ii=0; ii<arrIndexCol.length;ii++)
{
strKey[ii] = tRows[i].children[arrIndexCol[ii]].innerText;
if(strKey[ii] != strPrevKey[ii])
blEqual = false;
}
if(blEqual == false)
{
for(ii=0;ii<arrMergeCol.length;ii++)
tRows[i0].children[arrMergeCol[ii]].rowSpan = i-i0;
for( j=i0+1; j<i; j++)
for(ii=arrMergeCol.length-1;ii>=0;ii--)
tRows[j].children[arrMergeCol[ii]].removeNode(true);
i0 = i;

for(ii=0;ii<strKey.length;ii++)
strPrevKey[ii] = strKey[ii];
}
}
for(ii=0;ii<arrMergeCol.length;ii++)
tRows[i0].children[arrMergeCol[ii]].rowSpan = i-i0;
for( j=i0+1; j<i; j++)
for(ii=arrMergeCol.length-1;ii>=0;ii--)
tRows[j].children[arrMergeCol[ii]].removeNode(true);
return;
}

//函数调用Demo(合


相关文档:

如何我javaScript获取窗口的高度和宽度

在javascript中得到当前窗口的高和宽
<body><SCRIPT LANGUAGE="JavaScript">
var  s = "";
s += "\r\n网页可见区域宽:"+ document.body.clientWidth;
s += "\r\n网页可见区域高:"+ document.body.clien ......

javaScript获取对象集合(另一种方法)

除了用getElementByTagName   的另一种获取对象集合的方法
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" conte ......

Javascript练习实例01:乘法口诀表与筛选素数

<html>
<body>
<mce:script type="text/javascript"><!--
document.write("<table border=1px>");
for(i=1;i<=9;i++)
{document.write("<tr>");
for (j=1;j<=i;j++)
{document.write("<td class='table1'>"+i+"*"+j+"="+i*j+"&nbsp;&nbsp;& ......

质数 Javascript 之前的那个有点小毛病

<mce:script type="text/javascript"><!--
document.write("<table border=1px border-color=red>"); //表格开始
for (h = 1; h <= 10; h++) {
document.write("<tr>"); //开始第一行
for (s = 1; s <= 10; s++) {
var num = (h-1)*10+s; ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号