2

クライアント側のページングが必要です。

しかし、どういうわけか、私は最初のページを取り戻すだけのようですか?2ページ分のデータがあることはわかっていますが(つまり、コードをステップスルーし、間違いなく2ページあります...)...さらに厄介なのは、ページをナビゲートするためのリンクが決して表示されないことです。正解です...たとえば、次の画面で1of2と表示されると思います...

ページングの問題

また、右下に21のビュー1-15と表示されると思いますか?私の気持ちは、このページャーに情報を提供するために、データレイヤーで何か間違ったことをしているということです。したがって、最初のページのみが返されます。

    public static string JsonifyEnc(IEnumerable<TemplateModel> model, int popId, int page, int rows) {
        TemplateModel variable = model.ToArray()[0];
        ArrayList al = new ArrayList();
        //foreach (PatientACOModel patMod in variable.Template) {
        int i = 1;
        int rowstart = (page * rows + 1) - rows;
        int rowend = page * rows;
        //Here is where I create the rows... nothing special here
        var griddata = new {
            total = variable.Template.Count % rows > 0 ? (variable.Template.Count / rows) + 1 : (variable.Template.Count / rows),
            page = page,
            records = al.Count,
            rows = al.ToArray()
        };

合計変数をすばやく取得すると、2と表示されますか?これは、返されるjson文字列の最初の部分になります...

{"total":2,"page":1,"records":15,"rows":

だからそれはそこにあります。また、これは私が私のjqGridを構築している方法です...

    $(document).ready(function () {
        jQuery("#frTable").jqGrid ({
            cmTemplate: { sortable: false },
            caption: '@TempData["POPNAME"]' + ' Population',
            datatype: 'json',
            mtype: 'GET',
            url: '/Encounters/GetAjaxPagedGridData/', //'Url.Action("GetAjaxPagedGridData", "Encounters", new { popId = TempData["POPULATIONID"] })',//  
            postData: { popId: '@TempData["POPULATIONID"]'},
            pager: '#pager',
            jsonReader: {repeatitems: false},
            loadonce: true,
            height: 'auto',
            gridview: true,
            viewrecords: true,
            rowNum: 15,
            shrinkToFit: false,
            autowidth: true,
4

1 に答える 1

3

loadonce: trueクライアント側で使用する場合は、サーバー コードを変更してpage、 オプションを無視し、すべてのデータrowsを返すようにする必要があります。パラメータに対応するデータをソートするだけです(jqGridのand を参照)。応答で, andの部分を埋める必要はありません。sidxsordsortnamesortordertotalpagerecords

loadonce: truejqGridを使用する場合は、データを読み込み、内部dataおよび_indexパラメーターに保存します。その後、jqGrid jqGriddatatypeのオプションを に変更します"local"。したがって、その後のデータの並べ替え、フィルタリング (検索)、およびページングは​​すべてローカルで行われます。

于 2013-02-27T12:49:49.557 に答える