当我尝试使用JSON作为数据源将大约10000条数据记录加载到JQGrid时,我遇到了一个问题。
浏览器在此时冻结或未响应约5分钟。我的自定义加载程序也挂在浏览器上,页面的进度没有显示。
如果JQgrid的渲染需要花费时间,那就没关系,但是我想至少让我的装载机旋转以获得进展。
尝试了所有这些让装载机旋转的方法..但没有任何工作。
任何人都可以帮我在渲染Jqgrid时显示加载程序。
loadui : "disable",
loadtext: "Loading...",
beforeRequest : function () {
$("#testGrid").block();
$('.loading').show();
$("#testGrid").closest(".ui-jqgrid").find('.loading').show();
$(".loading").css("display", "block");
$(this).block({
message: '<img src="/images/loader.gif" />',
}); },
谢谢,
答案 0 :(得分:1)
我建议您执行以下操作:
rowNum: 20
和height: "auto"
loadComplete
或gridComplete
内部循环中的网格数据。而不应该使用rowattr
来设置行的CSS样式(赋值类)(请参阅the answer)和cellattr
来设置某些列的单元格的CSS样式(赋值类)(请参阅the answer)代码示例。如果您在用户可以看到的页面上填充更多行,那么您只需要强制执行不需要的工作。它使页面缓慢。如果使用10000个元素修改页面的一个元素,则Web浏览器必须重新计算所有其他9999元素的样式和位置。如果你在循环中进行这样的修改,那么你的页面非常慢。