행 삭제인 경우는.. 체크박스 있는 로우일 때만.ㅋ
/**
* Row추가
*
* @param obj : 테이블 ID
* @param cellNum : 추가될 Row의 Cell (td tag) 개수
* @param htmlValue : cell에 innerHtml로 들어갈 htmlTag (배열)
* @param rowAttr : row (tr tag 속성)
*
* 사용예
*
* @return
*/
function addRow(tableId,cellNum,htmlValue,rowAttr){
/**
* obj
* cellNum
* cellText(배열)
* rowAttr
*
* 사용예
*
* function test(obj){
*
*
* var htmlValue = new Array();
*
* htmlValue[0] = "<input type='checkbox' size='15' name='chk' />";
* htmlValue[1] = "<input type='text' size='15' name='id' />";
*
* var rowAttr = "#ffffff,25"; (색상, 높이)
*
* addRow(obj,htmlValue.length,htmlValue,rowAttr); *
*
* }
*/
if(typeof(tableId) == "undefined"){
alert("JAVASCRIPT ERROR : 호출한 테이블 ID 가 없습니다.");
return false;
}else{
var RecentRow = tableId.rows.length; // 현재 TableRow 수
var newRow = tableId.insertRow(RecentRow); // row추가.
var rowAttrArray = rowAttr.split(',');
newRow.bgColor = rowAttrArray[0]; // Row 속성
newRow.height = rowAttrArray[1];
for(var i=0;i<cellNum;i++){ // 새로운 Row에 cell 생성후, htmlValue 값을 사용하여 innerHtml
newRow.insertCell(i);
newRow.cells[i].innerHTML = htmlValue[i];
}
}
}
/**
*
* @param tableId - tableId (Object)
* @param checkBoxName - checkboxName (text)
*
* 사용예 -
* function del(tableId,checkBoxName){
deleteRow(tableId,checkBoxName);
}
*
* @return
*/
function deleteRow(tableId, checkBoxName){
if(typeof(tableId) == "undefined"){
alert("JAVASCRIPT ERROR : 호출한 테이블 ID 가 없습니다.");
return false;
}else{
var RecentRow = tableId.rows.length-1;
for (RecentRow ; RecentRow > 0 ; RecentRow--){
if (tableId.rows[RecentRow].all.namedItem(checkBoxName).checked == true)
{
// row가 1개 일때와 2개 이상일 때 구분해줄것.
tableId.deleteRow(RecentRow);
}
}
}
}
사용예제
매번 그냥 쓰다가; 내가 왜 이러고 싶나 해서 만들었다;
'HTML/JS/CSS' 카테고리의 다른 글
[javascript] 테이블안의 내용들을 Sort, Folding 하는 스크립트. (1) | 2009.09.29 |
---|---|
javascript comma 찍어주기. 풀어주기. (3) | 2008.12.01 |
textarea 제어. 몇가지. (0) | 2008.11.14 |