문제

여기에서 테이블 러와 호출기 플러그인을 사용하고 있습니다.http://tablestertor.com/docs/

예를 들어, 인덱스가 14 인 경우 테이블이 표시된 결과를 표시하기를 원합니다. 예를 들어, 테이블이 결과 11-20의 '페이지'를 표시하기를 원하므로 기본값에서 시작하지 않고 내 행이 표시됩니다. 1 페이지, 결과 1-10.

나는 이것을 예상대로 작동하지만 상당히 못생긴 코드와 함께 ..

먼저 표시 해야하는 페이지를 작성합니다 (C#).

int index = 24;
int pageToDisplayFirst = 1;
while (true)
{
    if (index - 10 > 0)
    {
        pageToDisplayFirst++;
        index -= 10;
    }
    else
    {
        break;
    }
}

그런 다음이 끔찍한 루프로 페이지를 설정했습니다.

for(var i = 0; i < <%= pageToDisplayFirst %>; i++) {
    $(".next").trigger("click");
}

다음은 JQuery Initialisation 코드입니다. 특별한 것은 없습니다.

 $("table.tablesorter").tablesorter({
     cssAsc: 'sortasc', cssDesc: 'sortdesc', cssHeader: 'unsorted',
     sortList: [[0,0]]
 }).tablesorterPager({container: $("#pager")});

그렇다면 누구든지 더 우아하고 효율적인 솔루션을 제안 할 수 있습니까?

도움이 되었습니까?

해결책

나는 c#을 모르지만 당신은 이것을 할 수 있습니다.

pageToDisplayFirst = Math.floor(index / itemsPerPage + 1)

 //found this code in the plungin source
this.defaults = {
    size: 10,
    offset: 0,
    page: 0, <<<<
    totalRows: 0,
    totalPages: 0,
    container: null,
    cssNext: '.next',
    cssPrev: '.prev',
    cssFirst: '.first',
    cssLast: '.last',
    cssPageDisplay: '.pagedisplay',
    cssPageSize: '.pagesize',
    seperator: "/",
    positionFixed: true,
    appender: this.appender
};

어쩌면 당신은 이것이 효과가있을 것입니다

$("table.tablesorter").tablesorter({
    cssAsc: 'sortasc', cssDesc: 'sortdesc', cssHeader: 'unsorted',
    sortList: [[0,0]]
}).tablesorterPager({container: $("#pager"), page: <%= pageToDisplayFirst %>});
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top