在调用url之前设置jqGrid页面

时间:2013-03-01 20:45:58

标签: asp.net-mvc-4 jqgrid

我正在寻找一种方法将jqGrid的页面设置为x ...

我的用例是有人正在使用我的网格... 他们点击病人来编辑那个病人(我没有使用jqGrids模态编辑屏幕......已经有很多模态窗口了...)

当保存他们对该患者所做的事情时,我想将浏览器重定向回他们点击该患者的屏幕,然后返回到相同的页面......

要记住的事情。

我正在使用asp.net MVC4。我通过动作方法调用第一页。我的网格的url变量是同一个控制器中的另一个动作。该操作是我将页面和行变量发送到的。我确信这可以做到,但是,我不知道如何实现它。到目前为止,在调用jqGrid之前,我已尝试在document.ready中设置页面变量和行变量...

            tbl.jqGrid({
                loadBeforeSend: function () {
                    page: pageFromTemp;
                    rows: rowFromTemp
                }
            });

基本上我尝试过不同的方法。以上只是其中之一。 我试图在document.ready中重新加载网格。但这没有任何意义。为什么在没有给它任何需要的参数时重新加载网格...

我试图在beforeRequest事件中设置变量。我有一个功能,我尝试将其设置为...

            beforeRequest: function () {
                if ((rowFromTemp != "") && (pageFromTemp != "")) {
                    $(this).trigger('reloadGrid', [{ page: pageFromTemp, rowNum: rowFromTemp, url: '/Encounters/GetAjaxPagedGridData/' }]);
                    //$.extend($(this).setGridParam({ page: pageFromTemp })),
                    //$.extend($(this).setGridParam({ rowNum: rowFromTemp })),
                    //$.extend($(this).setGridParam({ url: '/Encounters/GetAjaxPagedGridData/' }))
                    //$.trigger('reloadGrid', [{ page: pageFromTemp, rowNum: rowFromTemp, url: '/Encounters/GetAjaxPagedGridData/'}]);
                }
            },

但这也不起作用。我显然缺少一些东西。我做错了什么......

使用loadComplete和$(“frTable”)更改为正确的页面。触发器({})

但现在我收到一个闪烁的加载屏幕,它向我表明它仍在加载数据...... 如果我在代码中设置断点,我可以确认它正在加载数据。我没有在这里做点什么。

enter image description here

1 个答案:

答案 0 :(得分:0)

将网格加载到文档就绪,将其数据类型设置为local,将其网址取消分配,并将其隐藏。如果要加载它,请在设置参数后触发加载,然后将其显示给用户。