2016-11-22 5 views
0

으로 제한합니다. 페이지 매김 및 정렬을 위해 datatables 플러그인을 사용하고 있습니다. 처음에는 페이지를로드하는 동안 그리드는 데이터베이스에 대한 모든 레코드를 가져온 다음 레코드 값을 10으로 제한합니다. 따라서 페이지가 반응하지 않는 것 같습니다. 너무 많은 데이터를로드하는 순간이 있습니다.이 문제로 도움이됩니까? 처음로드하는 동안 레코드 수를 10으로 제한하려고합니다. 그리드가 반응적일 것입니다. 내 코드의 예 : 사전처음 페이지를로드하는 동안 그리드는 데이터베이스에 대한 모든 레코드를 가져온 다음 레코드 값을 1

당신은 당신의 웹 서비스에 대한 "아약스"URL을 정의하고 true로 "서버 측"옵션을 설정해야합니다

답변

0

에서

var options = { 
bsort: true, 
"bFilter": false, 
"sPaginationType": "full_numbers", 
aoColumnDefs: [ 
{ 
aTargets: [ 0 ], 
bSortable: false, 
}, 
{ 
aTargets: [ 9 ], 
bSortable: false, 
} 
] 
}; 
$('#Table_ID').DataTable(options); 

감사합니다. 또한 DataTable의 ajax 함수를 사용할 때 다음과 같은 "data"속성의 응답 데이터가 필요함을 유의하십시오.

반환 된 JSON - 객체 배열 표기.

{ "data": [{...}, {...}, {...}]} 

반환 JSON - 배열 표기법의 배열 : 당신은 당신이라는 이름의이 궁지에 매핑 속성을 정의 할 수 있도록 "열"옵션을 지정해야합니다 반환 된 JSON의 첫 번째 스타일로

{ "data": [[...], [...], [...]] } 

해당 배열에 포함 된 객체의 "data"속성을 설정합니다.

마지막으로 "serverside"를 true로 설정하면 서버에서 모든 정렬, 필터링 등을 수행해야합니다.

EDIT : 오늘은 입력 할 수 없습니다. 장소 곳곳에 누락 된 단어.

+0

답장 보내 주셔서 감사합니다. 내가 이것을 시도하자. 아약스없이 할 수있는 다른 제안이 있습니까? 내가 완전한 코드를 완성 했으므로 나는 모두 재 작업을해야한다. d 제한을 처음에는 10으로 제한해야합니다. –

+1

설명하는 사용 사례에 대해 서버 측 처리를 사용하는 것이 더 나은 솔루션이 될 수 없습니다. 여기에 그 예가 나와 있습니다. https://datatables.net/examples/data_sources/server_side.html – Mike

+0

@KishoreJn DataTables에 지연로드 옵션이 있습니다.이 옵션을 사용하면 객체와 같은 '보기'를 사용하여 작성한 첫 번째 페이지부터 시작할 수 있습니다. (JSP, PHP 등 ...) 그래서 당신은 inital 페이지로드에 서버 측 호출이 필요하지 않습니다. 나는 그것을 직접 사용하지 않았으므로 너무 많이 도울 수는 없지만 요구에 따라 부하를 제공 할 수 있고 클라이언트 측 정렬 및 필터링을 수행 할 수 있다는 것을 어떻게 이해할 수 있는가? 커다란 데이터 집합이나 연산 집약적 인 필터링이 없다면 클라이언트 측 정렬/필터링을 통해 애플리케이션의 확장 성이 향상 될 것입니다 – Adrian