열라 바쁜 가끔 빈곤 곰돌이

내가 검색을 못하는건지 인터넷에 찾아보면 2차원 배열을 컨트롤 하는게 적습니다.

혹여 까먹을지 몰라서 적어놓습니다.


그러니까 단순히 배열을 화면에 출력해주는 예시는 굉장히 많은데,

배열을 집어넣는 소스는 거의 없다시피 하더라고요.


자바스크립트에서 나름 배열로 저장을 하는데, cannot set property '0' of undefined 이런 에러메세지가 나오는 분들에게 도움이 되었음 합니다.



Comment +0

//실행을 마치고 테이블을 정렬해주는 기능
//args는 테이블 id입니다.
function tablesort(args) {
	var buildtype = jQuery(args).children('tr').get();
	buildtype.sort(function(a,b) {
		var val1 = jQuery(a).text().toUpperCase();
		var val2 = jQuery(b).text().toUpperCase();
		return(val1val2)?1:0;
	});

	jQuery.each(buildtype,function(index,row){
		jQuery(args).append(row);
	});
}
//여기까지 입니다. 코딩 오류인지 뒤에 자꾸 이상한 글이 나와요.;;;;

Comment +0

jQuery로 계속 append된 테이블에 중복된 값을 찾아서 만약 중복된 값이 있다면 해당 row를 삭제합니다.

원래 소스는 rowspan하는 건데... 삭제용으로 수정하였습니다.

//테이블에 중복된 값을 찾아서 삭제하기
function delTableRow(tableId) {
	//입력받은 tableId에서 tr을 찾아서 저장합니다.
	var rows = jQuery(tableId).children('tr');

	for (var i = 0; i < rows.length; i++ ) {
		var row = rows[i]; //현재 row를 저장합니다.
		var prevrow = rows[i-1]; //비교하기 위한 현재 row의 이전 row를 저장합니다.
		var removeRow = jQuery(row).find("td"); //먼저 현재 row를 삭제할 row로 지정하고 아래 조건식에서 값이 같은경우 삭제하도록 하는겁니다.
		var tdList = jQuery(row).find("td").eq(0).text(); // 현재 row의 데이터를 저장합니다.
		var tdListPrev = jQuery(prevrow).find("td").eq(0).text(); // 이전 row의 데이터를 저장합니다.

		//if문으로 이전 row의 데이터와 현재 row의 데이터가 동일하다면 삭제합니다.
		if(tdList == tdListPrev ) {
			jQuery(removeRow).parent().remove();
		}
	}
}


만약 데이터가 중구난방으로 입력된다면 (정렬안된상태) 정렬을 먼저 해야 합니다.

Comment +0