써먹는 웹개발

[Websquare] grid 관련하여 사용해본 메서드 (내용추가) 본문

Client/Websquare

[Websquare] grid 관련하여 사용해본 메서드 (내용추가)

kmhan 2019. 9. 25. 14:43


728x90
반응형

1. set

  • [setCellData] 셀에 값 추가  

grid1.setCellData(행 인덱스, "컬럼명", "값");

 

  • [setCellDisabled] 셀을 활성화 / 비활성화 

grid1.setCellDisabled(행 인덱스, "컬럼명", false); // 셀 활성화

grid1.setCellDisabled(행 인덱스, "컬럼명", true); // 셀 비활성화

 

  • [setFooterValue] 푸터에 값 추가  

grid1.setFooterValue("푸터 컬럼명", "값");

 

  • [setCellChecked] 컬럼의 종류가 체크박스인 셀을 체크/체크해제  

grid1.setCellChecked(행 인덱스, "컬럼명", true); // 셀 체크

grid1.setCellChecked(행 인덱스, "컬럼명", false); // 셀 체크해제

 

 - 응용 : 행 선택시 체크가 안되어있으면 체크하고 체크가 되어있으면 체크해제한다. (0번째 컬럼이 체크박스일때는 skip)

...</w2:gBody>

<script type="javascript" ev:event="oncellclick(row,col)"><![CDATA[

if (col != "0") {

  if(gridUseCard.getCellChecked(row, 'chk') == true){
      gridUseCard.setCellChecked( row, 'chk' , false );
  } else {
      gridUseCard.setCellChecked( row, 'chk' , true );
  }

}

]]></script>

 

  • [setHeaderValue] (체크박스일때) 전체 체크/체크해제

1) 전체 체크

grid1.setHeaderValue("헤더 컬럼명", false);

grid1.setHeaderValue("헤더 컬럼명", true);

 

2) 전체 체크해제

grid1.setHeaderValue("헤더 컬럼명", true);

grid1.setHeaderValue("헤더 컬럼명", false);

 

※ 두번 처리하는 이유는 전체 체크가 안되기 때문입니다.

 

  • [setColumnVisible] 셀 보이기 / 숨기기 

grid1.setColumnVisible("컬럼명", true); // 셀 보이기

grid1.setColumnVisible("컬럼명", false); // 셀 숨기기

 

  • [setColumnWidth] 컬럼의 너비 변경

grid1.setColumnWidth( 컬럼의 인덱스, "너비+px";

 

  •  [setAutoFit] 그리드 안의 총 컬럼 최소 너비 (최소 너비를 초과하면 그리드 내부 스크롤 발생)

 ※ 심화! 조건별로 최소너비 변경

var options;

 

if (A == 1){

  options = {

     type : "allColumn",

     minWidth : "1500px"

  }l

} else if(A == 2){

  options = {

     type : "allColumn",

     minWidth : "2000px"

  }l

}

 

grid1.setAutoFit( options );

 

  • [setRowBackgroundColor] 행의 배경색 설정

grid1.setRowBackgroundColor( 행 인덱스, "#e8f2fe"); // 하늘색

grid1.setRowBackgroundColor( 행 인덱스, "#ffffff"); // 흰색 (기본)

 

  • [setXML] submission에서 xml을 리턴받을때 그리드에 출력되도록 처리

※ SAP의 데이터 연동하는 등의 특정 상황에서만 쓰일 수 있습니다.

grid1.setXML(e.responseBody, false);

 

※ 191001 추가한 부분

  • [setNoResultMessage] 그리드의 출력값이 없을때 작성한 메세지 출력

grid1.setNoResultMessage("조회 데이터가 없습니다.");

 


2. get

  • [getRowCount] 출력된 행 개수 리턴

grid1.getRowCount();

 

  • [getCellData] 셀의 값 리턴  

grid1.getCellData(행 인덱스, "컬럼명");

 

  • [getCellChecked] 셀의 체크 여부 리턴  

grid1.getCellChecked(행 인덱스, "컬럼명");

 

  • [getCheckedIndex] 체크된 행 인덱스 목록을 배열로 리턴 

grid1.getCheckedIndex("컬럼명");;

 

  • [getColumnIndex] 해당하는 컬럼명의 인덱스 번호를 리턴 

grid1.getColumnIndex("컬럼명");

 

  • [getFocusedRowIndex] 포커스 된 행의 인덱스 번호를 리턴 

grid1.getFocusedRowIndex();

 

  • [getFocusedColumnID] 포커스 된 컬럼의 ID를 리턴 

grid1.getFocusedColumnID();

 

  • [getCheckedXML] 해당하는 컬럼명의 체크된 목록을 XML 형식의 데이터로 리턴 

grid1.getCheckedXML("컬럼명");

 


3. 기타

  • [initGrid] 그리드 초기화 (데이터가 아예없음, 0행의 상태)

grid1.initGrid();

 

  • [insertRow] (빈 값의) 행 추가

grid1.insertRow();

 

  • [advancedExcelDownload] 엑셀 다운로드

grid1.advancedExcelDownload({

 "fileName"         : "법인카드 미처리 내역"+today+".xls"    // 파일의 이름을 결정합니다.

 ,"type"             : "1" // type이 1인 경우 눈에 보이는 데이터를 0인 경우 실제 데이터를 가지고 옵니다.

 ,"startRowIndex"    : 0 // excel에서 gird의 데이터가 시작될 row의 index입니다.

 ,"startColumnIndex" : 0 // excel에서 gird의 데이터가 시작될 column의 index입니다.                

 ,"removeColumns"    : "0,1,14" // 다운로드시 excel에서 삭제하려는 열의 번호(여러 개일 경우,로 구분). 17이 추가확인 아이콘이라 없앰 

}, "");

728x90
반응형


Comments