[javascript] DataTables에서 셀에 컨텍스트 메뉴를 추가하는 방법은 무엇인가요?
Datatables는 데이터를 효과적으로 표시하고 상호 작용할 수 있는 라이브러리입니다. 셀에 컨텍스트 메뉴를 추가하는 방법에 대해 알아보겠습니다.
먼저, DataTables의 DataTables.ContextMenu 플러그인을 사용해야합니다. 이 플러그인은 컨텍스트 메뉴를 손쉽게 추가할 수 있게 해줍니다.
- DataTables 라이브러리와 DataTables.ContextMenu 플러그인을 다운로드하고 웹 페이지에 추가합니다.
<script src="https://cdn.datatables.net/1.10.24/js/jquery.dataTables.min.js"></script>
<script src="https://cdn.datatables.net/contextmenu/1.2.5/js/dataTables.contextMenu.min.js"></script>
<link href="https://cdn.datatables.net/1.10.24/css/jquery.dataTables.min.css" rel="stylesheet">
- DataTables를 초기화하고 컨텍스트 메뉴를 설정합니다.
$(document).ready(function() {
$('#myTable').DataTable({
// DataTables 초기화 옵션을 설정합니다.
});
$.contextMenu({
selector: '#myTable tbody td',
// 셀 선택자를 지정합니다.
callback: function(key, options) {
// 선택된 메뉴 아이템의 동작을 처리합니다.
var cellData = this.data();
alert('You clicked on cell: ' + cellData);
},
items: {
"edit": { name: "Edit", icon: "edit" },
"delete": { name: "Delete", icon: "delete" },
// 컨텍스트 메뉴 아이템을 설정합니다.
}
});
});
-
위 코드에서,
#myTable
은 DataTables가 적용된 테이블의 ID입니다. 이를 해당하는 테이블의 ID로 변경해야합니다. -
selector
속성으로 셀을 선택하고,callback
속성으로 메뉴 아이템이 선택될 때 실행할 동작을 정의합니다. 이 예제에서는 선택한 셀의 데이터를 알림으로 표시합니다. -
items
속성을 사용하여 컨텍스트 메뉴의 아이템을 설정합니다. 이름과 아이콘을 정의할 수 있습니다.
이제 DataTables에 셀에 컨텍스트 메뉴가 추가되었습니다. 클릭하면 설정한 동작이 실행됩니다.
참고 자료: