由于原因,我需要隐藏由jqgrid生成的默认标头并为其设置我自己的标头。对于演示,我正在尝试类似this的内容。
loadComplete:function(){
//$(".ui-jqgrid-titlebar").css("display","none");
$(".ui-jqgrid-hdiv").css("display","none");
if (!$(".ui-jqgrid-titlebar").next().hasClass("newheader"))
{
$("<div class='newheader'><div class='col-md-6''> FirstText </div><div class='col-md-6'> SecondText </div></div>").insertAfter(".ui-jqgrid-titlebar");
}
},
但我的实现有13列和50行也是&#34;分组&#34;网格。
目前填充网格大约需要4秒钟。在此加载时间期间,将显示默认标头。但我希望在内容加载时隐藏它。我该怎么做?
在一个answer中,我开始知道为了隐藏标题,我们必须省略标题。但是我需要标题而不是标题。帮助我吧!
答案 0 :(得分:1)
在我看来,您只想更改网格布局(所有外部潜水和标题),而不是网格主体。创建jqGrid后,将立即创建网格布局。另一方面,将加载数据后将调用loadComplete
。 loadComplete
内的所有当前代码与数据无关。因此,您可以从jqGrid外部移动代码。此外,如果您不想显示标题,则可以删除caption
参数。之后,您可以删除不需要的行$(".ui-jqgrid-titlebar").css("display","none");
。代码将是
// create the grid
$("#grid1").jqGrid({
...
});
$(".ui-jqgrid-hdiv").css("display","none");
$("<div class='newheader'><div class='col-md-6''>FirstText</div><div class='col-md-6'>SecondText</div></div>").insertAfter(".ui-jqgrid-titlebar");
见https://jsfiddle.net/92da8xhq/11/。我在创建网格之前添加了$("#grid1").jqGrid("GridUnload");
,因为您当前的代码可以更多地调用showgrid
函数。
答案 1 :(得分:0)
您可能希望使用gridComplete而不是loadComplete,但是如果您使用Guriddo jqGrid,或者您的代码可以包含在setTimeout函数中,那么在显示您自己的标题之前就是如此