1

花了很多时间试图找到如何在 jqGrid 的寻呼机上设置默认刷新按钮以刷新当前页面,但没有运气。

简而言之,这是我的网格:

$grid = $("#schedule");
var last_selected_row;
$grid.jqGrid({
    url:'xtras/schedule.php',
    editurl:'xtras/schedule.php',
    datatype: "json",
    mtype:'GET',
    colModel:[
        .................................   
    ],
    height: "100%",
    minWidth: 900,
    rowNum:15,
    rowList:[10,15,20,30,50,100],
    viewrecords: true,
    sortname:"ID",
    sortorder: "desc",
    pager: '#schedule_pager',
    caption:"Snapper Release Schedule",

    loadonce:false,
    ajaxGridOptions: {cache: false},

    grouping:true,
    groupingView : {
        groupField : ['Date'],
        groupColumnShow : [true],
        groupOrder: ['desc'],
        groupDataSorted : true
    },

    gridview: true,

    ondblClickRow: function (row_id) {
        if(row_id != null) {
            if(row_id !== last_selected_row) {
                jQuery('#schedule').jqGrid('restoreRow',last_selected_row);
                jQuery('#schedule').jqGrid('saveRow',row_id);
                jQuery("#schedule").jqGrid('editRow',row_id, true, null, 
                    function(){ $("#schedule").trigger("reloadGrid", [{current: true}]); }, 
                    'xtras/schedule.php', 
                    null,{},{},{}
                );
                last_selected_row = row_id; 
            } else {
                last_selected_row=row_id;
            }
        } 
    }
});

$grid.jqGrid('setGroupHeaders', {
    useColSpanStyle: true, 
    groupHeaders:[
        {startColumnName: 'Date', numberOfColumns: 11, titleText: '<em>Main Info</em>'},
        {startColumnName: 'Sales Text', numberOfColumns: 4, titleText: '<em>Deadlines</em>'}
    ]
});

$grid.jqGrid('navGrid','#schedule_pager',{edit:false,add:false,del:false},{},{},{},{});

现在在寻呼机中有搜索、刷新和分页,每当我在除第一页以外的任何页面上并点击刷新时,它都会重新加载到第一页。如何设置它以重新加载当前页面?(当我触发重新加载网格时,我使用[{current: true}],但是如何将其设置为默认刷新按钮?)

4

1 回答 1

6

您只需要使用navGridrefreshstate: "current"选项:

$grid.jqGrid("navGrid", "#schedule_pager",
    {edit: false, add: false, del: false, refreshstate: "current"}
);

顺便说一句,如果您navGrid主要使用“搜索”和“刷新”按钮来创建寻呼机,您可以更改默认值navGrid并使用稍后简化的调用navGrid

$.extend($.jgrid.nav, {
    edit: false,
    add: false,
    del: false
    refreshstate: 'current'
});
...
$grid.jqGrid("navGrid", "#schedule_pager");
于 2013-10-23T09:49:50.640 回答