2016-11-04 6 views
0

私はブートストラップによって提供されるjavascriptを含むテーブルのページ付けに以下のコードを使用しました。私は私がページ"3", "1"を開いた後、私は次のボタンをクリックし、テーブルの下の行のそれぞれの数を開きます改ページでは3つのリンク、"1", "2", "3"は、"5"によって"4", "2"に置き換える必要があります持っている、と"6"によって"3"ブートストラップを使用したテーブルのページ分割が機能していません

I have clicked "3" and on clicking next, it should be in order "4", "5", "6"

これらは私のJSとHTMLファイル

htmlがある

<div class="container"> 
    <div class="row"> 
     <div class="table-responsive"> 
     <table class="table table-hover"> 
      <thead> 
      <tr> 
       <th>#</th> 
       <th>Table heading</th> 
       <th>Table heading</th> 
       <th>Table heading</th> 
       <th>Table heading</th> 
       <th>Table heading</th> 
       <th>Table heading</th> 
      </tr> 
      </thead> 
      <tbody id="myTable"> 
      <tr> 
       <td>1</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
      </tr> 
      <tr> 
       <td>2</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
      </tr> 
      <tr> 
       <td>3</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
      </tr> 
      <tr> 
       <td>4</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
      </tr> 
      <tr class="success"> 
       <td>5</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
      </tr> 
      <tr> 
       <td>6</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
      </tr> 
      <tr> 
       <td>7</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
      </tr> 
      <tr> 
       <td>8</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
      </tr> 
      <tr> 
       <td>9</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
      </tr> 
      <tr> 
       <td>10</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
      </tr> 
      <tr> 
       <td>11</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
      </tr> 
      <tr> 
       <td>12</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
       <td>Table cell</td> 
      </tr> 
      </tbody> 
     </table> 
     </div> 
     <div class="col-md-12 text-center"> 
     <ul class="pagination pagination-lg pager" id="myPager"></ul> 
     </div> 
    </div> 
</div> 

のJSファイル:あなたが$('#myTable').pageMe(...)を行うと

$.fn.pageMe = function(opts){ 
    var $this = this, 
     defaults = { 
      perPage: 7, 
      showPrevNext: false, 
      hidePageNumbers: false 
     }, 
     settings = $.extend(defaults, opts); 

    var listElement = $this; 
    var perPage = settings.perPage; 
    var children = listElement.children(); 
    var pager = $('.pager'); 

    if (typeof settings.childSelector!="undefined") { 
     children = listElement.find(settings.childSelector); 
    } 

    if (typeof settings.pagerSelector!="undefined") { 
     pager = $(settings.pagerSelector); 
    } 

    var numItems = children.size(); 
    var numPages = Math.ceil(numItems/perPage); 

    pager.data("curr",0); 
    var curr = 0; 

    if (settings.showPrevNext){ 
     $('<li><a href="#" class="prev_link">«</a></li>').appendTo(pager); 
    } 

    $('<li><a href="#" class="page_link">'+(1)+'</a></li>').appendTo(pager); 
    $('<li><a href="#" class="page_link">'+(2)+'</a></li>').appendTo(pager); 
    $('<li><a href="#" class="page_link">'+(3)+'</a></li>').appendTo(pager); 

    /* var curr = 0; 
    while(numPages > curr && (settings.hidePageNumbers==false)){ 
     $('<li><a href="#" class="page_link">'+(curr+1)+'</a></li>').appendTo(pager); 
     curr++; 
    }*/ 

    if (settings.showPrevNext){ 
     $('<li><a href="#" class="next_link">»</a></li>').appendTo(pager); 
    } 

    //pager.find('.page_link:first').addClass('active'); 
    pager.find('.prev_link').hide(); 
    if (numPages<=1) { 
     pager.find('.next_link').hide(); 
    } 
     pager.children().eq(1).addClass("active"); 

    children.hide(); 
    children.slice(0, perPage).show(); 

    pager.find('li .page_link').click(function(){ 
     var clickedPage = $(this).html().valueOf()-1; 
     goTo(clickedPage); 
     return false; 
    }); 
    pager.find('li .prev_link').click(function(){ 
     previous(); 
     return false; 
    }); 
    pager.find('li .next_link').click(function(){ 
     next(); 
     return false; 
    }); 

    function previous(){ 
     var goToPage = parseInt(pager.data("curr")) - 1; 

     goTo(goToPage); 
    } 

    function next(){ 
     goToPage = parseInt(pager.data("curr")) + 1; 

     goTo(goToPage); 
    } 

    function goTo(page){ 
     var startAt = page * perPage, 
      endOn = startAt + perPage; 

     children.css('display','none').slice(startAt, endOn).show(); 

     if (page>=1) { 
      pager.find('.prev_link').show(); 
     } 
     else { 
      pager.find('.prev_link').hide(); 
     } 

     if (page<(numPages-1)) { 
      pager.find('.next_link').show(); 
     } 
     else { 
      pager.find('.next_link').hide(); 
     } 

     pager.data("curr",page); 
     if(page >=1) { 
      document.getElementByClassName(".page_link").value = curr + 1; 
      pager.data("curr",page); 
     } 
     pager.children().removeClass("active"); 
     pager.children().eq(page+1).addClass("active"); 

    } 
}; 

$(document).ready(function(){ 

    $('#myTable').pageMe({pagerSelector:'#myPager',showPrevNext:true,hidePageNumbers:false,perPage:2}); 

}); 

は、

+0

このリンクは参考になると思います。http://botmonster.com/jquery-bootpag/#.WBxNNS197cs –

+0

またはhttp://www.jqueryscript.net/demo/Simple-Customizable-Pagination-Plugin- with-jQuery-Bootstrap-Twbs-Pagination / –

答えて

0

を助けてくださいlistElement.children();<thead><tbody>要素を見つけます。

$('#myTable tbody')を使用して<tr>要素を検索してください。

関連する問題