单击按钮后,可以在另一个视图/页面中刷新/重新加载jqgrid吗?

时间:2016-09-19 07:59:30

标签: javascript jquery ajax jqgrid

您好我是这个网站的新手。对于我上面的标题,我可以在单击我的按钮后在不同的view/page中重新加载jqgrid的数据?我知道如何重新加载一个jqgrid,但它在同一个视图上的按钮和我的jqgrid。我在想这个场景

SCENARIO

第2页已经打开,可以在jqgrid中重新加载数据。单击第1页上的按钮后,第2页中的jqgrid将重新加载。事件为saving of data或者我是否真的需要刷新我的(Press F5)来查看已保存的数据?

BTW我正在使用jqgrid 4.3.3

1 个答案:

答案 0 :(得分:0)

是的,这是可能的。我不确定您使用的是哪种服务器端语言,但使用网络套接字或signalR,您可以向所有打开的页面发送消息,以便在服务器上刷新数据时进行刷新。您也可以使用轮询来实现这一目标。 概念是这样的:

  • 您可以从网格或第1页上的任何位置更新数据,然后转到服务器。现在您要刷新可能包含此数据的页面或打算显示它。
  • 轮询:在所有此类页面上,如果从轮询中获得更改,则从服务器刷新数据
  • SignalR:您可以使用集线器向所有客户端发送方法,以运行检查网格状态的javascript代码,然后刷新它。

还有其他方法,当有人点击具有网格的页面时,您可以在数据库中创建关于该页面的条目并将其状态保存为有效。当您更新使此数据无效的内容时,您可以轮询此表中的所有页面并告诉用户/或自动刷新所有此类页面的网格。

我只在signalR中完成此操作,它包装了轮询和websockets,因此如果不能选择signalR,你可以使用其中的任何一个。