라이브러리는 1편에서 추가 했고 역시 material-icons 사용하기 위해선
아래 CDN 이 추가 되어야 한다.
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
계층형 구조의 테이블 데이터를 트리형식으로 view 하기
아래와 같이 영역을 잡아놓고
<div class="organization-body">
<div id="tree"></div>
</div>
샘플 코드
xhr 로 데이터 가져온후 아래 initTree 를 호출한다.
function initTree(data) {
if (data.companyTreeList) {
var tree = $('#tree').tree({
dataSource: data.companyTreeList,
primaryKey: 'id',
cascadeSelection: false,
icons: {
expand: '<i class="material-icons">add</i>',
collapse: '<i class="material-icons">remove</i>'
},
uiLibrary: 'materialdesign',
selectionType:,
'single'
// single,multiple
// single,multiple
dragAndDrop: true
});
// 드래그앤 드랍이벤트 등록
tree.on('nodeDrop', function (e, companyId, parentId, companyOrder) {
// var company = tree.getDataById(companyId);
moveCompany(companyId, parentId, companyOrder);
});
//체크 박스 이벤트 등록
tree.on('checkboxChange', function (e, $node, record, state) {
// console.log("checkboxChange");
// console.log(e);
// console.log($node);
// console.log(record);
// console.log(state);
});
//노드를 클릭할시 이벤트 등록
tree.on('select', function (e, node, id) {
var company = tree.getDataById(id);
treeContext.setSelectedCompany(company);
renderCompanyInfoBody(company);
});
//노드를 클릭해제 할시 이벤트 등록
tree.on('unselect', function (e, node, id) {
treeContext.setSelectedCompany(null);
emptyCompanyInfoBody();
});
//이건 그냥 캡슐화 코딩
treeContext.setTree(tree);
//모든 노드 하위 펼치기
expendAll();
}
}
물론 데이터를 셀렉트 해온후 리스트에서 -> 맵으로 변환하는 컨버팅 작업이 사전실시 되어야 한다. 다음포스팅에 컨버팅 하는 방법을 포스팅 하겟다.
자세한 이벤트 및 function 은 해당 사이트 참조
피드 구독하기:
댓글 (Atom)
[oracle]백업및 복구
[oracle]백업및 복구 오라클 덤프 백업및 복구 윈도우 서버 기반 간단 정리 --디렉터리 조회 sqlplus 또는 dbtool 입력시작 SELECT * FROM DBA_DIRECTORIES ; --D:...
-
수십대의 서버에 특정 쉘을 실행한다거나 파일을 수정해야할경우 호스트 입력 아이디 입력 패스워드 입력은 여간 짜증나는일이 아닐수 없다. 이를 한방에 해주는 방법 teraterm 를 설치한다( putty 는 버리자 ) 예를 들면 19...
-
pom.xml <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId...
-
notice_state 란 이름의 체크박스가 있다 가정하고 $("input[name=notice_state]").bind("click",false); 끝.
댓글 없음:
댓글 쓰기