0

我有一个独特的问题,我似乎无法找到答案。

我实现了一个分页的 jqGrid。当我双击任何数据页面上的一行时,我的计划是使用 onDoubleClick 事件并使用带有 (id) 参数的函数来获取行的 id,并将其传递给我拥有的操作方法然后将我的页面重定向到编辑页面(我不使用 jqGrid 编辑弹出窗口......这将是我网站上的太多模式窗口)。我的问题是,一旦我编辑了那个病人,我想重定向回我点击离开的相同页面(数据)以进入这个编辑页面。当我说同一个页面时,我将重定向到同一个网格,我想回到保存我刚刚单击的行的同一个数据页面。对我来说,最简单的方法是将页面和行信息发送到我用来调用编辑页面的操作方法。

我可以重定向回数据的第一页......但我希望用户看到他对那个人所做的更改。这可能在数据的第 n 页...

我以为我想出了一个解决方案...

    $(document).ready(function () {
        debugger;
        var pageFromTemp = '@TempData["PAGEVAR"]';
        var rowFromTemp = '@TempData["ROWVAR"]';
        var pId = '@TempData["POPULATIONID"]';
        if ((rowFromTemp != "") && (pageFromTemp != "")) {
            //loadPage(pageFromTemp, rowFromTemp, pId);
            $("#ftTable").setGridParam({ page: pageFromTemp });
            $("ftTable").setGridParam({ rowNum: rowFromTemp });
        }
        //else {
        jQuery("#frTable").jqGrid({

如您所见,在 $(document).ready(function (){} 上,我获得了已保存以重定向到此页面的页面信息,并尝试使用 setGridParam 函数对其进行设置。不幸的是,我仍然重定向回数据的第一页。有没有办法可以将 jqGrid 设置为打开数据的第 N 页?

4

2 回答 2

1

保存网格状态的最好方法是使用localStorage. 看答案上一个

试试演示。您可以选择每页 5 行,选择网格中的第二页,选择某行。然后转到任何其他页面并再次打开演示。您可以使用F5键重新加载页面。您将看到先前选择的页面和先前选择的行将被恢复。所以所有的工作都像你想要实现的那样。此外,它将保存许多其他参数,这些参数是网格的状态。它改善了用户体验,使使用网格更加舒适。

于 2013-02-28T07:44:17.670 回答
1

以下将重新加载网格并将其设置为特定页面。您必须注意在出现双击的网格的第一个视图期间出现的过滤、排序等,并且根据您的用例,可能会在重新加载网格期间将其传递出去。

$(gridName).jqGrid().trigger('reloadGrid', [{ page: X}]);
于 2013-02-27T23:08:58.780 回答