2014. 11. 6. 15:44 IT/jquery_javascript
javascript로 동적 rowspan, colspan
javascript로 동적 rowspan, colspan
1. rowspan
<script language="javascript">
function tableRowSpanning(Table, spanning_row_index) {
var RowspanTd = false;
var RowspanText = false;
var RowspanCount = 0;
var Rows = $('tr', Table);
$.each(Rows, function () {
var This = $('td', this)[spanning_row_index];
var text = $(This).text();
if (RowspanTd == false) {
RowspanTd = This;
RowspanText = text;
RowspanCount = 1;
}
else if (RowspanText != text) {
$(RowspanTd).attr('rowSpan', RowspanCount);
RowspanTd = This;
RowspanText = text;
RowspanCount = 1;
}
else {
$(This).remove();
RowspanCount++;
}
});
// 반복 종료 후 마지막 rowspan 적용
$(RowspanTd).attr('rowSpan', RowspanCount);
}
$(document).ready(function () {
tableRowSpanning("#timetbody", 1);
tableRowSpanning("#timetbody", 0);
});
function chkForm() {
if (document.srchForm.txtSearch.value == "") {
alert('검색어를 입력해 주세요.');
document.srchForm.txtSearch.focus();
return false;
}
return true;
}
</script>
2. colspan
<script type="text/javascript">
var jv = jQuery.noConflict();
jv.noConflict();
function trColSpanning(objTr) {
var Cols = jv('th', objTr);
var RowspanTd = false;
var RowspanText = false;
var RowspanCount = 0;
jv.each(Cols, function () {
var text = jv(this).text();
if (RowspanText == false) {
RowspanTd = jv(this);
RowspanText = text;
RowspanCount = 1;
}
else if (RowspanText != text) {
jv(RowspanTd).attr('colSpan', RowspanCount);
RowspanTd = jv(this);
RowspanText = text;
RowspanCount = 1;
}
else {
RowspanCount++;
jv(this).remove();
}
});
// 반복 종료 후 마지막 rowspan 적용
jv(RowspanTd).attr('colSpan', RowspanCount);
}
jv(document).ready(function () {
trColSpanning("#tr_head");
});
</script>
'IT > jquery_javascript' 카테고리의 다른 글
javascript 메모리 복사 기능. (0) | 2015.04.03 |
---|---|
checkbox 전체 체크 해제. 체크박스 전체 체크 해제. (0) | 2014.12.29 |
jQuery API 정복 - 자식 요소들 찾기, children(), find() (0) | 2014.10.10 |
jquery 노드(node) (0) | 2014.10.07 |
jquery input radio, checkbox (0) | 2014.10.06 |