/*
*
* 같은 값이 있는 열을 병합함
*
* 사용법 : $('#테이블 ID').rowspan(0);
*
*/
$.fn.rowspan = function(colIdx, isStats) {
return this.each(function() {
var that;
$('tr', this).each(function(row) {
$('td:eq(' + colIdx + ')', this).filter(':visible').each(function(col) {
if ($(this).html() == $(that).html()
&& (!isStats
|| isStats && $(this).prev().html() == $(that).prev().html()
)
) {
rowspan = $(that).attr("rowspan") || 1;
rowspan = Number(rowspan) + 1;
$(that).attr("rowspan", rowspan);
// do your action for the colspan cell here
$(this).hide();
//$(this).remove();
// do your action for the old cell here
} else {
that = this;
}
// set the that if not already set
that = (that == null) ? this : that;
});
});
});
};
/*
*
* 같은 값이 있는 행을 병합함
*
* 사용법 : $('#테이블 ID').colspan (0);
*
*/
$.fn.colspan = function(rowIdx) {
return this.each(function() {
var that;
$('tr', this).filter(":eq(" + rowIdx + ")").each(function(row) {
$(this).find('td').filter(':visible').each(function(col) {
if ($(this).html() == $(that).html()) {
colspan = $(that).attr("colSpan");
if (colspan == undefined) {
$(that).attr("colSpan", 1);
colspan = $(that).attr("colSpan");
}
colspan = Number(colspan) + 1;
$(that).attr("colSpan", colspan);
$(this).hide(); // .remove();
} else {
that = this;
}
that = (that == null) ? this : that; // set the that if not already set
});
});
});
}
$('#head').rowspan(0);
$('#head').colspan(0);
'모바일 & 앱' 카테고리의 다른 글
excel로 추출시 숫자 데이터를 문자로 인식시키기 (0) | 2022.03.17 |
---|---|
MSSQL CONVERT YYYY.MM.DD (0) | 2022.03.17 |
MSSQL 인덱스 일괄 재생성 (0) | 2022.03.04 |
MFC Default browser 무시하고 익스플로러 띄우기 (0) | 2021.11.12 |
MSSQL datetime 필드 사용시 1900-01-01이 곤란하다면 ISNULL 대신 COALESCE 함수 (0) | 2021.08.13 |