我使用FreeJqGrid,我无法解决我的问题。我有两个div,一个用于收集信息,另一个用于在freejqGrid中显示此收集的结果。
第一个div是可见的,第二个div是隐藏的,当我切换这些div时,我的网格不是全宽。见Link。那么我该怎样才能调整它呢?我在SOF中尝试了许多像grid.trigger一样的回答('调整大小')但没有任何效果。以下是我构建网格的方法:
grid.jqGrid({
data: myData,
colNames: ["Matricule","ID CICP","Nom Prénom", "N° de Sécurité Sociale", "Date entée", "Date sortie", "Adhérent"],
colModel: [
{
name: "matricule", template: 'string', align:'center'
},
{
name: "idEmpl", template: 'string', align:'center'
},
{
name: "name", template: 'string', align:'center',
jsonmap: function (item) {
return item.name.first + " " + item.name.last;
},
sorttype: function (cell) {
return cell.last + " " + cell.first;
}
},
{
name: "numSecu", template: 'string', align:'center'
},
{
name: "dateEntree", formater: 'date', sorttype: "date", formatoptions:{newformat: 'dd-mm-yy'}, align:'center'
},
{
name: "dateSortie", formater: 'date', sorttype: "date", formatoptions:{newformat: 'dd-mm-yy'}, align:'center'
},
{
name: "adherent", template: 'string', align:'center'
}
],
onSelectRow: function(rowid){
//blabla
},
autowidth: true,
sortname: "name",
shrinkToFit: false
});
只有当我使用jQuery的.show()和.hide()事件时才会出现此问题。
答案 0 :(得分:1)
您可以使用onShowHideCol
回调或"jqGridShowHideCol"
事件在 showCol
或hideCol
后执行操作。例如,您可以使用
var resizeGrid = function () {
grid.jqGrid("setGridWidth", grid.closest(".ui-jqgrid").parent().width());
};
// resize the grid on showing/hiding columns
grid.bind("jqGridShowHideCol", function () {
resizeGrid();
});
// resize the grid on resizing the window
$(window).bind("resize", function () {
resizeGrid();
});
有关在调整窗口大小时调整网格大小的代码示例,请参阅the answer和this one。请参阅the demo和this one。