function mergeFunc ( tableId) {
var tab = document. getElementById ( tableId) ;
var maxCol = 2 ;
var val, count, start;
for ( var col = maxCol - 1 ; col >= 0 ; col-- ) {
count = 1 ;
val = "" ;
for ( var i = 0 ; i < tab. rows. length; i++ ) {
if ( tab. rows[ i] . cells[ col] ) {
if ( val == tab. rows[ i] . cells[ col] . innerHTML && tab. rows[ i] . cells[ col] . innerHTML) {
if ( isNumber ( tab. rows[ i] . cells[ col] . innerHTML) ) {
continue ;
}
count++ ;
} else {
if ( count > 1 ) {
start = i - count;
if ( ! tab. rows[ start] . cells[ col] ) {
continue ;
}
tab. rows[ start] . cells[ col] . rowSpan = count;
for ( var j = start + 1 ; j < i; j++ ) {
if ( ! tab. rows[ j] . cells[ col] ) {
continue ;
}
tab. rows[ j] . cells[ col] . style. display = "none" ;
tab. rows[ j] . removeChild ( tab. rows[ j] . cells[ col] ) ;
}
count = 1 ;
}
val = tab. rows[ i] . cells[ col] . innerHTML;
}
} else {
var dd = tab. rows[ i] . cells[ col] ;
}
}
if ( count > 1 ) {
start = i - count;
tab. rows[ start] . cells[ col] . rowSpan = count;
for ( var j = start + 1 ; j < i; j++ ) {
tab. rows[ j] . removeChild ( tab. rows[ j] . cells[ col] ) ;
}
}
}
}
function isNumber ( n) {
return ! isNaN ( parseFloat ( n) ) && isFinite ( n) ;
}