jqgrid reload grid partially working

前端 未结 3 536
耶瑟儿~
耶瑟儿~ 2020-12-11 12:13

I have a client side managed jqgrid that I reload when some external event are fired. Everything is fine when I reload the grid with more data but when I reload it with less

相关标签:
3条回答
  • 2020-12-11 12:17

    Try to replace

    $("#list2")[0].refreshIndex();
    $("#list2").trigger("reloadGrid");
    

    with

    var g = $("#list2");
    g.setGridParam({ data: gridData });
    g[0].refreshIndex();
    g.trigger("reloadGrid");
    

    see http://www.trirand.com/blog/?page_id=393/help/losing-edited-cell-data-after-paging/ and http://www.trirand.com/blog/?page_id=393/bugs/data-parameter-are-not-modified-during-inline-editing/ for details.

    In general you should use probably better set url parameter with respect of setGridParam methods or just use postData with a function (see How to filter the jqGrid data NOT using the built in search/filter box for details)

    0 讨论(0)
  • 2020-12-11 12:40

    Same thing happened to me. My problem was in the PHP file that returns the data. You should verify that the conditions of the query that counts the records are equal to the conditions used to obtain the records. Probably the SQL statement to count records has no conditions. (Excuse my mistakes, I do not speak English)

    0 讨论(0)
  • 2020-12-11 12:41

    I Solved this issue using this code but in my case issue was a bit different that newly added rows were not shown in JQGrid. So this code gets the updated data for Grid and then save it in local object and then reassign this local object to grid and reload grid to page 1.

    var grid_data = $("#Grid_ID").jqGrid('getGridParam', 'data'); 
        $("#Grid_ID").jqGrid('clearGridData').jqGrid('setGridParam', { 
            datatype: 'local',
            data: grid_data,
            rowNum: grid_data.length 
        }).trigger('reloadGrid', [{ page: 1}]);
    
    0 讨论(0)
提交回复
热议问题