728x90
스크립트
var itemsPerPage1 = 10; // 한 페이지당 표시할 열의 수
var currentPage1 = 1; // 현재 페이지
var totalRows1 = $("table#allTable tbody tr").length; // 전체 행 수
var totalPages1 = Math.ceil(totalRows1 / itemsPerPage1); // 전체 페이지 수
// 초기 페이지 업데이트
updatePage1();
// 이전 페이지로 이동
$("#prevPage1").on("click", function() {
if (currentPage1 > 1) {
currentPage1--;
updatePage1();
}
});
// 다음 페이지로 이동
$("#nextPage1").on("click", function() {
if (currentPage1 < totalPages1) {
currentPage1++;
updatePage1();
}
});
// 페이지 번호들을 동적으로 생성
function generatePageNumbers1() {
$("#pagination1 li.page-number1").remove(); // 기존 페이지 번호 제거
for (var i = 1; i <= totalPages1; i++) {
var pageLink = $("<li class='page-item page-number1'><a class='page-link' href='#'>" + i + "</a></li>");
if (i === currentPage1) {
pageLink.addClass("active");
}
pageLink.insertBefore($("#nextPage1"));
}
// 페이지 번호 클릭 시 해당 페이지로 이동
$(".page-number1 a").on("click", function() {
currentPage1 = parseInt($(this).text());
updatePage1();
});
}
// 페이지를 업데이트하고 테이블을 다시 그리는 함수
function updatePage1() {
var startIndex = (currentPage1 - 1) * itemsPerPage1;
var endIndex = startIndex + itemsPerPage1;
// 모든 행을 숨김
$("table#allTable tbody tr").hide();
// 현재 페이지의 행만 표시
$("table#allTable tbody tr").slice(startIndex, endIndex).show();
// 페이지 번호들을 동적으로 생성
generatePageNumbers1();
}
});
//검색 기능 구현
$(document).ready(function() {
$("#searchButton").on("click", function() {
search();
});
// Enter 키 누를 때 검색 함수 호출
$("#searchField").on("keyup", function(event) {
if (event.keyCode === 13) { // Enter 키의 keyCode는 13입니다.
search();
}
});
function search() {
var searchText = $("#searchField").val().toLowerCase();
// 모든 행을 숨김
$("table#allTable tbody tr").hide();
// 검색어와 일치하는 행을 표시
$("table#allTable tbody tr").each(function() {
var employeeName = $(this).find('td:eq(1)').text(); // 두 번째 열의 사원 이름을 가져옴
if (employeeName.toLowerCase().indexOf(searchText) !== -1) {
$(this).show();
}
});
// 검색 결과가 변경되었으므로 페이지도 업데이트
updatePage1();
}
});
nav aria-label="Table Paging" class="my-3">
<ul class="pagination justify-content-end mb-0" id="pagination1">
<!-- "이전" 버튼 -->
<li class="page-item" id="prevPage1">
<a class="page-link" href="#" aria-label="Previous">
<span aria-hidden="true">«</span>
</a>
</li>
<!-- 페이지 번호들이 여기에 동적으로 추가됩니다. -->
<!-- "다음" 버튼 -->
<li class="page-item" id="nextPage1">
<a class="page-link" href="#" aria-label="Next">
<span aria-hidden="true">»</span>
</a>
</li>
</ul>
</nav>
html
'JSP > Muzi' 카테고리의 다른 글
[Javascript] 자바스크립트 이벤트 전파 막기 (1) | 2023.12.08 |
---|---|
이미지를 못찾아 오류 났을 때 (0) | 2023.10.13 |
초마다 이미지 변경하기 (0) | 2023.10.06 |
일정 시간마다 이미지 변경하기(setTimeout ,setInterval ) (0) | 2023.10.06 |
등록일자 시간 나타내기 (0) | 2023.10.04 |