Tree Select - Case 1: 기본 구조
Tree Select 예제
기본 구조
1차 카테고리
2차 카테고리
3차 카테고리
선택된 항목
HTML 구조
<div class="tree-select-layout">
<!-- 왼쪽: 트리 선택 영역 -->
<div class="tree-select-layout__left" role="grid">
<div class="tree-header" role="row">
<div class="column-header" role="columnheader">1차 카테고리</div>
<div class="column-header" role="columnheader">2차 카테고리</div>
<div class="column-header" role="columnheader">3차 카테고리</div>
</div>
<div class="tree-panel" id="treeContainer">
<!-- data-level="1" -->
<div class="column">
<ul class="column-list">
<li role="gridcell">
<label class="ui-checkbox">
<input type="checkbox" class="ui-checkbox__input" data-id="category1" data-level="1" />
<span class="ui-checkbox__box"></span>
<span class="ui-checkbox__label">카테고리 1</span>
</label>
</li>
</ul>
</div>
<!-- data-level="2" -->
<div class="column">
<ul class="column-list">
<li role="gridcell">
<label class="ui-checkbox">
<input type="checkbox" class="ui-checkbox__input" data-id="sub1-1" data-parent="category1" data-level="2" />
<span class="ui-checkbox__box"></span>
<span class="ui-checkbox__label">하위 1-1</span>
</label>
</li>
</ul>
</div>
<!-- data-level="3" -->
<div class="column">
<ul class="column-list">
<li role="gridcell">
<label class="ui-checkbox">
<input type="checkbox" class="ui-checkbox__input" data-id="item1-1-1" data-parent="sub1-1" data-level="3" />
<span class="ui-checkbox__box"></span>
<span class="ui-checkbox__label">항목 1-1-1</span>
</label>
</li>
</ul>
</div>
</div>
</div>
<!-- 가운데 화살표 -->
<div class="tree-select-layout__arrow"></div>
<!-- 오른쪽: 선택된 항목 리스트 -->
<div class="tree-select-layout__right">
<div class="selected-panel">
<div class="panel-header">
<span class="panel-title">선택된 항목</span>
<button type="button" class="button-reset js-reset-button">초기화</button>
</div>
<ul class="selected-list" id="selectedList" role="list" aria-live="polite" aria-atomic="true"></ul>
</div>
</div>
</div>
Tree Select - Case 2: 초기 체크 옵션
Tree Select 예제 (초기 체크)
초기 체크 옵션
1차 카테고리
2차 카테고리
3차 카테고리
선택된 항목
HTML 구조
<!-- 초기 체크 옵션: data-tree-initial-checked 속성에 data-id 값 지정 -->
<div class="tree-select-layout" data-tree-initial-checked="item1-1-1, item1-2-1">
<!-- ... 트리 구조 ... -->
</div>
<!-- 또는 공백으로 구분 -->
<div class="tree-select-layout" data-tree-initial-checked="item1-1-1 item1-2-1">
<!-- ... 트리 구조 ... -->
</div>