【问题标题】:jqGrid memory leak on reloadGridreloadGrid 上的 jqGrid 内存泄漏
【发布时间】:2011-02-16 10:13:19
【问题描述】:

我还没有找到解决 Internet Explorer 8 内存泄漏的方法(没有尝试过其他方法)。

泄漏是由调用jqGrid$("#grid").trigger("reloadGrid");方法引起的。

我尝试了deepempty: true,但没有奏效。我也尝试拨打clearGridData,但无济于事:(

我使用最新的 3.8.2 版本的 jqGrid 并从服务器加载 JSON 数据。

【问题讨论】:

  • 您应该发布可用于重现问题的 jqGrid 定义(完整的 JavaScript 代码)。
  • 如果您认为我的回答满足您的问题,请您考虑关闭它吗?谢谢。
  • 您使用的是哪个 jQuery 版本?有人遇到过类似的问题,看来 jQuery 1.5 已经解决了:stackoverflow.com/questions/5064034/…
  • 嗨 LeftyX,我使用的是 1.4.4,当然,当我用 1.5 测试您的建议时,我会关闭这个问题,可能需要一两天(工作量太大)跨度>
  • 我还没有机会使用 jQuery 1.5 试用我的应用程序,但似乎问题已得到解决。我读到 jqGrid 与 jQuery 1.5 有一些问题。

标签: jqgrid


【解决方案1】:

我在不同场合使用过$("#grid").trigger("reloadGrid");,并用IE8测试过,从来没有遇到任何问题。
您要加载多少行?
能否提供一些代码?

【讨论】:

  • 嗨,我认为发布任何代码都是没有用的,原因很简单:如果你去TRIRAND SITE并打开菜单项Loading Data -> JSON Data,然后尝试手动刷新网格并观察 iexplore.exe 的内存行为,每次刷新都会增加 :( 现在想象在 Intranet 应用程序上每 5 秒刷新一次网格 :)
  • 是的,但是,为什么要每 5 秒刷新一次网格?难道你不能只是在一个页面上发布/获取(使用 jQuery)来告诉你数据是否已经改变。如果有更改,您只需重新加载网格。
  • 无论如何,我在 jquery 和 IE stackoverflow.com/questions/2920986/jquery-empty-and-memory 上遇到了类似的问题,但我没有找到真正的解决方案。还有一张票:bugs.jquery.com/ticket/6242 我认为问题出在 jQuery 而不是 jqGrid 中。我会避免每 5 秒重新加载一次网格。我最终每 x 个周期刷新一次页面。
  • 我做了完全相同的事情,每 5 秒重新加载一次,并在 100 次重新加载后刷新。但是,我喜欢您关于有条件重新加载的想法,非常顺利的解决方案:) 而且,感谢您的票,我一定会遵循它。我注意到的另一件事是,在 Ajax.BeginForm (MVC2 ASP.NET) 完成后,元素的内容被替换了,但是内存泄漏也在那里,所以必须清除元素的 html :(
  • 嗯,通常会写类似的东西:using (Ajax.BeginForm( "GenerateReport" , "Report" , new AjaxOptions { InsertionMode = InsertionMode.Replace, LoadingElementId = "waitImageDiv", UpdateTargetId = "mainReportForm", OnSuccess = "reportFunctions.Initialize" } , new { id = "mainReportForm" })) { 现在,控制器返回填充UpdatetargetId 的 PartialView。人们会期望没有内存泄漏,但是......它会泄漏:(
猜你喜欢
  • 1970-01-01
  • 2012-12-23
  • 2017-02-28
  • 2017-04-14
  • 2011-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多