마스터욱
Toggle navigation
  • 회원가입 | 정보찾기
ICON NAVIGATION
정보수정 쪽지함 주변맛집 익명채팅
공지사항 채팅 개발문의 방명록
  • MAIN NAVIGATION
  • 메인
  • 마스터욱 공간
    • 마스터욱 소개
    • 개발 리스트
    • 공지사항
    • 방명록
  • 마스터욱 외부자료
    • 네이버
    • 티스토리
    • 깃허브(github)
  • 개인 프로젝트
    • 랜덤 이성 채팅
    • Auto 크롤링
    • Javascript 카카오 채팅
    • 파이썬 뉴스매매
    • C# 키움 주식 자동매매
    • C# 키움 주식 패턴 분석
    • PHP 욱보드
    • 업비트 자동매매 개발
    • 업비트 자동매매 일지
  • 개발 의뢰
    • 개발 문의
    • 개발 견적
    • 개발 피드백
    • FAQ
  • 개발 경험 Tip
    • PHP
    • JSP
    • HTML
    • Javascript
    • Android
    • C#
    • MySQL
    • Linux
    • Python
    • NodeJS
    • React
    • Vue.js
    • Flutter
    • 정규식
    • 기타
  • 커뮤니티
    • 자유게시판
    • 추천사이트
    • 영화
    • 여행
    • 유머
    • Overseas News
  • 맛집&즐길 거리 탐방
    • 맛집 정보
    • 즐길 거리 정보
    • 내 주위 맛집&즐길 거리
  • 공유 사진
    • 음식
    • 여행
    • 캐릭터
    • 배경
    • 기타
    • 이모티콘
    • 일러스트
  • 놀이터
    • 블록뽀시기
    • 트레이딩뷰
    • 로또 시뮬레이션
    • 쳇쳇 익명 채팅
    • 랜덤 이성 채팅
    • AI 채팅
    • 미니 채팅
    • 바이너리 테스트
    • 마번호 생성기
    • 바카라 시뮬레이션
    • 홀짝점수 테스트
    • 로또 분석기
SITE STATISTICS
  • - 명 현재 접속자
  • 603 명 오늘 방문자
  • 1,712 명 어제 방문자
  • 5,192 명 최대 방문자
  • 701,350 명 전체 방문자
  • 2,571 개 전체 게시물
  • 496 개 전체 댓글수
Facebook Twitter GooglePlus KakaoStory NaverBand
  1. 홈
  2. 자바스크립트
목록으로

자바스크립트 페이징

마스터욱 0 126 0 0 2018-05-24 03:42:42

자바스크립트로 페이징을 만들었는데, 다음에 또 사용할 기회가 생길까봐 메모해 둔다~

list_string 는 php의 리스트 array 배열이다.

 

  1. list_string = $.parseJSON('<?=json_encode($new_data_all)?>');
  2. list_total = parseInt("<?=sizeof($new_data_all)?>");
  3. list_cnt = 6;
  4. function get_list(pg_num)
  5. {
  6.     start = ( pg_num - 1 ) * list_cnt;
  7.     string = "";
  8.     cnt = 0;
  9.     pcnt = 0;
  10.     for(var key in list_string)
  11.     {
  12.         if(start <= cnt)
  13.         {
  14.             row_number = list_total - (list_cnt * (pg_num - 1)) - pcnt;
  15.             row = list_string[key];
  16.  
  17.             out_x_class         = row['out_x_res']      == "pass" ? "" : "font_red";
  18.             out_y_class         = row['out_y_res']      == "pass" ? "" : "font_red";
  19.             out_avg_class       = row['out_avg_res']    == "pass" ? "" : "font_red";
  20.             in_x_class          = row['in_x_res']       == "pass" ? "" : "font_red";
  21.             in_y_class          = row['in_y_res']       == "pass" ? "" : "font_red";
  22.             in_avg_class        = row['in_avg_res']     == "pass" ? "" : "font_red";
  23.             dongsim_class       = row['dongsim_res']    == "pass" ? "" : "font_red";
  24.             height_1_class      = row['height_1_res']   == "pass" ? "" : "font_red";
  25.             height_2_class      = row['height_2_res']   == "pass" ? "" : "font_red";
  26.             height_3_class      = row['height_3_res']   == "pass" ? "" : "font_red";
  27.             height_4_class      = row['height_4_res']   == "pass" ? "" : "font_red";
  28.             height_avg_class    = row['height_avg_res'] == "pass" ? "" : "font_red";
  29.  
  30.             string += "<tr>";
  31.             string += "     <td class='text-center'>"+row_number+"</td>";
  32.             string += "     <td class='text-center'>"+row['reg_date'].substring(2, 10)+" "+row['reg_time']+"</td>";
  33.             string += "     <td class='text-center "+out_x_class+"'>"+row['out_x']+"</td>";
  34.             string += "     <td class='text-center "+out_y_class+"'>"+row['out_y']+"</td>";
  35.             string += "     <td class='text-center "+out_avg_class+"'>"+row['out_avg']+"</td>";
  36.             string += "     <td class='text-center "+in_x_class+"'>"+row['in_x']+"</td>";
  37.             string += "     <td class='text-center "+in_y_class+"'>"+row['in_y']+"</td>";
  38.             string += "     <td class='text-center "+in_avg_class+"'>"+row['in_avg']+"</td>";
  39.             string += "     <td class='text-center "+dongsim_class+"'>"+row['dongsim']+"</td>";
  40.             string += "     <td class='text-center "+height_1_class+"'>"+row['height_1']+"</td>";
  41.             string += "     <td class='text-center "+height_2_class+"'>"+row['height_2']+"</td>";
  42.             string += "     <td class='text-center "+height_3_class+"'>"+row['height_3']+"</td>";
  43.             string += "     <td class='text-center "+height_4_class+"'>"+row['height_4']+"</td>";
  44.             string += "     <td class='text-center "+height_avg_class+"'>"+row['height_avg']+"</td>";
  45.             string += "</tr>";
  46.  
  47.             pcnt++;
  48.         }
  49.  
  50.         if(pcnt >= list_cnt){
  51.             break;
  52.         }
  53.  
  54.         cnt++;
  55.     }
  56.  
  57.     if(string != ""){
  58.         pghtml = paging(list_total, list_cnt, 10, pg_num);
  59.         $("#pgbox").html(pghtml);
  60.     }
  61.     else{
  62.         string += "<tr>";
  63.         string += "     <td colspan='27' class='text-center'>데이터가 없습니다.</td>";
  64.         string += "<tr>";
  65.         $("#pgbox").html("");
  66.     }
  67.  
  68.     $("#listbody").html(string);
  69. }
  70.  
  71.  
  72. // 목록 페이징
  73. function paging(totalCnt, dataSize, pageSize, pageNo){
  74.     totalCnt    = parseInt(totalCnt);   // 전체레코드수
  75.     dataSize    = parseInt(dataSize);   // 페이지당 보여줄 데이타수
  76.     pageSize    = parseInt(pageSize);   // 페이지 그룹 범위       1 2 3 5 6 7 8 9 10
  77.     pageNo      = parseInt(pageNo);     // 현재페이지
  78.  
  79.     var html = new Array();
  80.     if(totalCnt == 0){
  81.         return "";
  82.     }
  83.  
  84.     html.push("<nav>");
  85.     html.push("     <ul class=\"pagination\" style='margin:0px;'>");
  86.  
  87.     // 페이지 카운트
  88.     var pageCnt = totalCnt % dataSize;
  89.     if(pageCnt == 0){
  90.         pageCnt = parseInt(totalCnt / dataSize);
  91.     }else{
  92.         pageCnt = parseInt(totalCnt / dataSize) + 1;
  93.     }
  94.  
  95.     var pRCnt = parseInt(pageNo / pageSize);
  96.     if(pageNo % pageSize == 0){
  97.         pRCnt = parseInt(pageNo / pageSize) - 1;
  98.     }
  99.  
  100.     //이전 화살표
  101.     if(pageNo > pageSize){
  102.         var s2;
  103.         if(pageNo % pageSize == 0){
  104.             s2 = pageNo - pageSize;
  105.         }else{
  106.             s2 = pageNo - pageNo % pageSize;
  107.         }
  108.  
  109.         html.push('<li><a aria-label="Previous" href=javascript:get_list("');
  110.         html.push(s2);
  111.         html.push('");>');
  112.         html.push('<span aria-hidden="true">&laquo;</span>');
  113.         html.push("</a></li>");
  114.     }else{
  115.         html.push('<li><a aria-label="Previous" href="#">\n');
  116.         html.push('<span aria-hidden="true">&laquo;</span>');
  117.         html.push('</a></li>');
  118.     }
  119.  
  120.     //paging Bar
  121.     for(var index=pRCnt * pageSize + 1;index<(pRCnt + 1)*pageSize + 1;index++){
  122.         if(index == pageNo){
  123.             html.push('<li class="active"><a href="javascript:void(0);">');
  124.             html.push(index);
  125.             html.push('</a></li>');
  126.         }else{
  127.             html.push('<li><a href=javascript:get_list("');
  128.             html.push(index);
  129.             html.push('");>');
  130.             html.push(index);
  131.             html.push('</a></li>');
  132.         }
  133.  
  134.         if(index == pageCnt){
  135.             break;
  136.         }else{
  137.             //html.push('|');
  138.         }
  139.     }
  140.  
  141.     //다음 화살표
  142.     if(pageCnt > (pRCnt + 1) * pageSize){
  143.         html.push('<li><a aria-label="Next" href=javascript:get_list("');
  144.         html.push((pRCnt + 1)*pageSize+1);
  145.         html.push('");>');
  146.         html.push('<span aria-hidden="true">&raquo;</span>');
  147.         html.push('</a></li>');
  148.     }else{
  149.         html.push('<li><a aria-label="Next" href="#">');
  150.         html.push('<span aria-hidden="true">&raquo;</span>');
  151.         html.push('</a></li>');
  152.     }
  153.     //console.log(html);
  154.  
  155.     html.push("     </ul>");
  156.     html.push("</nav>");
  157.  
  158.     return html.join("");
  159. }
0
0

목록

Facebook Twitter GooglePlus KakaoStory NaverBand
0 Comments

비밀번호 확인

확인
댓글은 자신을 나타내는 '얼굴'입니다. *^^*
등록
자동등록방지 숫자를 순서대로 입력하세요.

댓글수정


글쓰기
검색
번호 제목 이름 날짜 조회
  • 72
    leaflet 무료지도
    마스터욱
    조회수 197   25-12-29 19:13
    마스터욱
    25-12-29 19:13
    197
  • 71
    스마트폰 하단 태스크 바(task bar)에 따른 하단 bottom 자동으로 제어하기
    마스터욱
    조회수 239   25-08-31 22:06
    마스터욱
    25-08-31 22:06
    239
  • 70
    ajax 리스팅, 스크롤 위치 유지 스크립트
    마스터욱
    조회수 188   25-08-11 02:58
    마스터욱
    25-08-11 02:58
    188
  • 69
    [1] http 에러까지 return 해주는 jquery ajax post [1]
    마스터욱
    조회수 331   24-06-04 14:25
    마스터욱
    24-06-04 14:25
    331
  • 68
    아이폰 사파리에서 window.open 이 작동되지 않는 문제
    마스터욱
    조회수 299   23-07-29 09:25
    마스터욱
    23-07-29 09:25
    299
  • 67
    콜백(callback)지옥 탈출하기
    마스터욱
    조회수 295   23-02-27 16:28
    마스터욱
    23-02-27 16:28
    295
  • 66
    IntersectionObserver
    마스터욱
    조회수 159   22-11-24 14:42
    마스터욱
    22-11-24 14:42
    159
  • 65
    [1] async, await 사용예시 [1]
    마스터욱
    조회수 193   22-11-18 12:41
    마스터욱
    22-11-18 12:41
    193
  • 64
    스크롤 페이징
    마스터욱
    조회수 222   22-11-01 17:53
    마스터욱
    22-11-01 17:53
    222
  • 63
    callback function 을 넘길때 파라메터(매개변수) 까지 전달하는 방법
    마스터욱
    조회수 180   22-10-20 02:31
    마스터욱
    22-10-20 02:31
    180
  • 62
    내가 만든 Form SerializeArray
    마스터욱
    조회수 205   22-10-12 04:02
    마스터욱
    22-10-12 04:02
    205
  • 61
    모바일 주소창 안보이게 하는 소스코드
    마스터욱
    조회수 172   22-08-17 03:08
    마스터욱
    22-08-17 03:08
    172
  • 60
    Ajax 크로스 도메인(cross domain) 해결방법
    마스터욱
    조회수 148   21-11-26 02:01
    마스터욱
    21-11-26 02:01
    148
  • 59
    javascript : JSON 데이터 안의 데이터를 동적으로 바꾸는 방법
    마스터욱
    조회수 164   21-06-12 00:55
    마스터욱
    21-06-12 00:55
    164
  • 58
    JSON Object(오브젝트) 데이터를 표(Table) 형식으로 보여주게 하는 함수(자체제작)
    마스터욱
    조회수 154   21-06-07 15:06
    마스터욱
    21-06-07 15:06
    154
  • 57
    자바스크립트 팝업(POPUP) 자동(Auto) 리사이징(Resizing)
    마스터욱
    조회수 151   21-06-06 23:12
    마스터욱
    21-06-06 23:12
    151
  • 56
    자바스크립트 get 파라메터를 string 으로 리턴해주는 함수
    마스터욱
    조회수 180   21-05-06 15:41
    마스터욱
    21-05-06 15:41
    180
  • 55
    비트맥스API Javascript Websocket Private API 연결
    마스터욱
    조회수 177   21-04-17 16:29
    마스터욱
    21-04-17 16:29
    177
  • 54
    JSON 데이터를 Table 코드로 보기좋게 변경해주는 함수(재귀)
    마스터욱
    조회수 161   21-04-17 15:18
    마스터욱
    21-04-17 15:18
    161
  • 53
    navigator.geolocation 쉽게 사용하기
    마스터욱
    조회수 186   21-03-31 01:31
    마스터욱
    21-03-31 01:31
    186
글쓰기
검색
  • 1
  • 2
  • 3
  • 4
  • 다음

Search

개인정보처리방침
마스터욱. All rights reserved.

Close

0 명 접속중
Time Loading...