1

私はjsファイルを持っていて、json形式で出力を返すwebmethodにパラメーターを渡します。最初のページのみが表示されます。約100レコードあり、20レコードのみが表示されます。次のページに他のレコードを表示する必要があります。次のようなテーブルの後にdivタグを追加してみました

<div id="pager12" class="scroll" style="text-align:center;></div>

次に、jqgridfunction $('#SearchForComp).jqGrid()に、この行を追加しました pager: jQuery('#pager12')。出力をページに表示するにはそれで十分ですか、それとも何か追加する必要がありますか?動いていない。

ありがとう

jqueryは次のようになります

$("#SearchForComp").jqGrid({
    scroll: true,
    treeGrid: true,
    altRows: true,
    treeGridModel: 'adjacency',
    ExpandColumn: 'DISPLAY_NAME',
    datatype: function (postdata) {
        postdata.deptSeqNo = null;
        postdata.searchString = $("#SearchForComp").val().trim();

        $.ajax({
            type: "POST",
            url: 'Department.aspx/compsearch',
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            data: JSON.stringify(postdata),
            complete: completeUserSearch
        });
    },
    mtype: "POST",

    colModel: [{ name: 'KEY_FIELD', index: 'KEY_FIELD', width: 1, hidden: true, key: true },
               { label: 'Department/Name', name: 'DISPLAY_NAME', index: 'DISPLAY_NAME', width: 200, resizable: false, sortable: false },
               { label: 'Telephone', name: 'DISPLAY_PHONE', index: 'DISPLAY_PHONE', width: 150, align: 'center', resizable: false, sortable: false },
               { label: 'Email', name: 'DISPLAY_EMAIL', index: 'DISPLAY_EMAIL', width: 225, align: 'center', resizable: false, sortable: false, formatter: 'email'}],
    treeIcons: { plus: 'ui-icon-plus', minus: 'ui-icon-minus', leaf: 'ui-icon-radio-off' },
    height: 'auto',
    caption: "User Search",
    treeReader: {
        level_field: "TREE_LEVEL",
        parent_id_field: "PARENT_ID",
        leaf_field: "IS_LEAF",
        expanded_field: "EXPANDED"
    },
    jsonReader: {
        root: "Data",
        page: "CurrentPage",
        total: "TotalPages",
        records: "TotalRecords",
        repeatitems: false,
        id: "0",
        userdata: "UserData"

    },

    beforeSelectRow: function (id, e) { return false; },
 });

データをjson形式で返すWebメソッド「compsearch」を呼び出して、ユーザーに表示します。

4

1 に答える 1

3

おそらく、 rowNumオプションを定義していないため、デフォルト値20が使用されます。通常、サーバー側のデータのページングの実装を修正しても問題ありません。サーバー側でデータのページングとフィルタリングを実装したくない場合は、loadonce: truejqGrid にオプションを追加できます。このオプションは自動的datatypeに変更され、ページングは​​サーバーとの追加通信なしで行われます。さらに、ツールバー フィルターまたはAdvanced Searchingを使用して、データのフィルター処理を 1 行で実装できます。'local' loadonce: true

于 2012-04-18T16:29:52.877 に答える