已在我们的Web应用程序的页面上实现了jqgrid。一切工作,如显示记录和删除记录,但当我把IE浏览器兼容模式进入IE 7或8它需要3到5秒才显示网格。我也只显示一条记录。jqgrid IE 8/7性能
我正在使用jquery 1.6,并试图升级到最新版本没有区别。我注意到的一件事是jquery调用了一个名为clean的函数,这个函数看起来只需要3秒就可以浏览这些浏览器,但我不知道为什么或者它在做什么。
var id = $("#<%=DesID.ClientID%>").val();
$.getJSON("data.aspx?id=" + id, function (data) {
jQuery("#list2").jqGrid({
datatype: 'jsonstring',
colNames: ['', 'Id', 'BodyId', ' Officers Body', 'Alternative Responsible Officer', ''],
colModel: [
{
name: 'RowID',
sortable: false,
shrinkToFit: false,
width: 10,
formatter: function (cellvalue, options, rowObject) {
var Rowid = options.rowId;
return "<span >" + Rowid + " </span>";
}
},
{ name: 'Id', index: 'Id', width: 0, hidden: true, sortable: false },
{ name: 'BodyId', index: 'BodyId', sortable: false, width: 0, hidden: true },
{ name: 'BodyName', index: 'BodyName', sortable: false, shrinkToFit: true },
{ name: 'BodyNameRo', index: 'BodyNameRo', sortable: false, width: '100%' },
{
name: 'Delete',
sortable: false,
shrinkToFit: true,
width: 20,
formatter: function (cellvalue, options, rowObject) {
var Rowid = options.rowId;
return "<input type='button' value='Delete' class='btn' onClick='deleteRecords(" + Rowid + ");' />";
}
}
],
beforeSelectRow: function (rowid, e) {
return false;
},
onInitGrid: function() {
// get reference to parameters
var p = $(this).jqGrid("getGridParam");
// set data parameter
p.datastr = data;
},
viewrecords: true,
caption: "",
autowidth: true,
shrinkToFit: true,
height: '100%',
scroll: false,
gridview: true,
loadOnce: true
});
HiddenJson.val(JSON.stringify(data));
});
代码中有很多奇怪的事情。例如'colModel'有两个**列,名字相同:'name:'actions''。这是一个错误。你使用'sortname:'id'',网格中没有''id''列。目前还不清楚为什么你使用'datatype':'jsonstring'而不是'datatype:'local''。关于你的主要问题:我在我所有的网格中都使用了'。为什么你可能需要模拟IE8或IE7并使用任何其他''X-UA-Compatible“'标签?我建议您另外阅读[答案](http://stackoverflow.com/a/25532422/315935)。 – Oleg 2014-09-10 10:13:28
尝试了上面的建议,并且仍然需要5秒来渲染网格。我也试过本地但没有区别,所以我把我带回jsonstring。即使在网格中没有数据也需要5秒。有没有理由不使用jsonstring? – 2014-09-10 10:51:06
网格不再做任何事情,从那里获取数据库中的选定项目,用户可以添加或删除新的或现有的行。由于使用这样做,存储在隐藏字段中的json被更新。当页面发布时,我接收json并相应地更新数据。 – 2014-09-10 10:54:48