2017-01-25 4 views
1

이제 검색 결과를위한 데이터 테이블을 생성하기 위해 진행 중입니다. 그래서 아래와 같은 검색 양식이 있습니다 :Datatables plugin : 그리기 후 페이지 네이션이 올바르지 않습니다. onclick

그래서이 양식을 제출하면 목록이 데이터 테이블 안에 나타납니다. 다음은 내 코드 데이터베이스를 호출하고 datatables에 결과를 표시한다 :

var myTable = $('#myTable').DataTable(); 

$('.submit_search').on('click', function(){ 
    $.ajax({ 
     type: "POST", 
     url: myURL, 
     data: myData, 
     dataType: "json", 
     success: function (data) { 
      // here the search working great 
      // there is total of 100 data from the search, but I only pass 25 (TOP 25) 
      // 
      var json = $.parseJSON(data); 
      data.draw = parseInt(json.draw); 
      data.recordsTotal = parseInt(json.recordsTotal); // total 100 pass here 
      data.recordsFiltered = parseInt(json.recordsFiltered); // total 100 pass here 
      data.data = json.searchData; 

      myTable.clear().draw(); 
      myTable.rows.add(data.data).draw(); 
     } 
    }); 
}); 

내 모든 25 개 데이터가 이미 테이블에 제대로 표시, 위의 코드에서. 내 페이지 매김이 올바르지 않은 것을 제외하고. 아마도 4 페이지가 테이블 아래에 표시되지만 1 페이지 만 표시됩니다.

서버 쪽을 사용하여 어떻게 달성 할 수 있습니까? 아니면이 작업을 수행 할 다른 제안이 있습니까? 도와주세요. 감사합니다.

답변

0

데이터 테이블을 초기화 할 때 몇 가지 옵션을 설정해보십시오. 자세한 정보는 페이징에 관한 DataTables 문서를 참조하십시오. https://datatables.net/examples/basic_init/alt_pagination.html

$(document).ready(function() { 
    $('#example').DataTable({ 
     "pagingType": "full_numbers" 
    }); 
}); 

그래도 도움이되지 않는다면 초기화시 'dom'옵션도 함께 사용해보십시오. 부트 스트랩, 파운데이션 또는 jQuery UI와 같은 스타일 통합 옵션 중 하나를 사용하는 경우이 매개 변수의 기본값을 변경합니다. https://datatables.net/reference/option/dom

$('#example').dataTable({ 
     dom: 'lfrtip' 
    });