4

ページネーションを使用して Dynatable の例を作成しようとしています。これを行うには、html ファイルと同じディレクトリから直接、Ajax を使用してロードされた html ファイルと json を作成しました。

データは正しく表示されます。フッターには、「5 件中 5 件のレコードを表示しています (合計 45 件のレコードからフィルター処理されています)」と表示されていますが、これも問題ありません。問題は、右側のリンクです。9 ページ表示する必要があるのに、1 ページしか表示されません。

これはhtmlコンテンツです:

<body>
<div class="dynatable-demo">    
<table id="my-ajax-table" class="table table-bordered hoverTable">
<thead>
       <tr>
        <th data-dynatable-column="idturno" data-dynatable-no-sort="true">Id Turno</th>
        <th data-dynatable-column="accessionnumber">Accesion Number</th>
        <th data-dynatable-column="apellidopaterno">Apellido Paterno</th>
       </tr>
</thead>
<tbody>
</tbody>
</table>
</div>

<script>

$('#my-ajax-table').dynatable({
 dataset: {
    ajax: true,
    ajaxOnLoad: true,
    ajaxUrl: 'consulta.json',
    records: [],
    perPageDefault: 5,
    perPageOptions: [5,10,100]
 }
});
</script>

「consulta.json」ファイルは次のとおりです。

{
"records": [
    {
        "idturno": "88",
        "accessionnumber": "24471579",
        "apellidopaterno": "DORATO^PABLO EZEQUIEL"
    },
    {
        "idturno": "89",
        "accessionnumber": "0001",
        "apellidopaterno": "apepaterno"
    },
    {
        "idturno": "90",
        "accessionnumber": "0002",
        "apellidopaterno": "apepaterno"
    },
    {
        "idturno": "91",
        "accessionnumber": "0003",
        "apellidopaterno": "apepaterno"
    },
    {
        "idturno": "92",
        "accessionnumber": "0004",
        "apellidopaterno": "apepaterno"
    }
],
"queryRecordCount": 5,
"totalRecordCount": 45
}
4

4 に答える 4

1

ソースを調べた後、私も同じ問題を抱えています。

pages = Math.ceil(settings.dataset.queryRecordCount / settings.dataset.perPage)

queryRecordCount は perPage で割られており、これは等しいため、単一のページです。

実際にはその場所のtotalRecordCountである必要があります。おそらく、問題は ajax のみにあったのでしょう。queryRecordCounttotalRecordCountに変更すると、問題なく動作します。

于 2019-02-01T12:22:32.273 に答える
0

これをコードに追加します

$('#my-ajax-table').dynatable({
dataset: {
    ajax: true,
    ajaxOnLoad: true,
    ajaxUrl: 'consulta.json',
    records: [],
    perPageDefault: 5,
    perPageOptions: [5, 10, 100]
},
features: {
    paginate: true,
    sort: true,
    pushState: false,
    search: true,
    recordCount: true,
    perPageSelect: true
}

});

于 2014-11-06T07:17:51.530 に答える
0

このクエリでは、queryRecordCount と totalRecordCount は同じです。する必要があります

"queryRecordCount": 45,
"totalRecordCount": 45

フィルターされたクエリ (?search) でのみ異なります

于 2019-10-08T10:12:26.140 に答える