我正在使用带有大量列的jqGrid。我有一个问题,其中一些列在Internet Explorer中被切断(我在IE9上测试)所有列在Firefox中都很好。任何人都可以想到这个问题的原因或解决方法。我在Firefox和IE中的最后一个cols下面放了一个截图。 IE会弹出一个水平滚动条,但这很痛苦,因为我显示了100行,所以你必须在浏览器中向下滚动很多,然后滚动查看最后一列。试图看看是否有摆脱那个网格水平滚动条
这是Firefox,其中显示了所有16列
这是Internet Explorer,其中只显示了14个完整列,并且第15列(ResourceType)在列的1/2中被切断
有关如何让所有列显示在Internet Explorer中的任何建议
答案 0 :(得分:2)
我认为您遇到的问题与the bug report中描述的问题相同。在这种情况下,您应该从
更改内部the last line功能的cellWidthreturn testCell !== 5;
到
return Math.abs(testCell – 5) > 0.1;
您可以在jquery.jqGrid.src.js
中执行此操作,也可以尝试使用the file。它解决了我的情况下错误计算网格宽度的问题。
答案 1 :(得分:1)
我使用的是Jqgird 4.5.2,Chrome版本是版本28.0.1500.71。 上面的解决方案列表在我的环境中不起作用。我不知道为什么,所以我尝试记录testCell!== 5。 它在firefox中返回false,在chrome中返回false。 最后我在cellwidth中添加return false而不关心比较结果。 它有效。
cellWidth : function () {
var $testDiv = $("<div class='ui-jqgrid' style='left:10000px'><table class='ui-jqgrid-btable' style='width:5px;'><tr class='jqgrow'><td style='width:5px;'></td></tr></table></div>"),
testCell = $testDiv.appendTo("body")
.find("td")
.width();
$testDiv.remove();
return false;
},
希望它能有所帮助。