如何将jqgrid列与列标题对齐?

时间:2015-11-18 09:41:34

标签: jquery css jqgrid

我在列/列标题对齐方面遇到了很多麻烦。

jqgrid的图片:

enter image description here

正如您在上图所示,我的第一列宽度大于列标题。如果我将列标题宽度设置为更大的数字,列单元格宽度也会增加。我一直在尝试打开和关闭shrinkToFit,并在第一列单元格中添加一个类并设置'max-widht'和'width'但不起作用。

jqgrid应该有第一列填充员工姓名,其余列表示该月的日期。这个月的几天将用几个字母填充,背景颜色为空,或者留空。

这是我的代码

$(document).ready(function () {
$("#tabs").tabs();

var ColModel1 = [];
ColModel1.push({ name: 'EMPLEADOS', label:'Empleados', index: 'EMPLEADOS',    align:'left', width:185    });
for (var i = 1; i < 32; i++) {
    ColModel1.push({ name: 'DIA_' + i, label: i, index: 'DIA_' + i, align: 'left', width: 27
    });
}
ConstruyeGridVacaciones(ColModel1);
});

function ConstruyeGridVacaciones(ColModel1) {
$("#GridMaestroVacaciones").jqGrid({
    datatype: 'local',
    altRows: true,
    altclass: 'jqgrid-altrow',
    rowNum: 1000,
    //scrollOffset: 0,
    shrinkToFit: false,
    height: 645,
    hidegrid: false,
    caption: "Vacaciones",
    width: 1180,
    colModel: ColModel1,
    pager: '#PaginadorGridMaestroMonedas',
    imgpath: '../shared/themes/basic/images',
    viewrecords: true,
    sortorder: 'asc',
});

var datos = {'EMPLEADOS':'1'};
for (var i = 1; i < 32; i++) {
    var key ='DIA_'+i;
    datos[key] = i;
}

$('#GridMaestroVacaciones').jqGrid('addRowData', '1', datos, 'last');

$('#GridMaestroVacaciones').jqGrid('addRowData', '2', datos, 'last');

$('#GridMaestroVacaciones').jqGrid('addRowData', '3', datos, 'last');

$('#GridMaestroVacaciones').jqGrid('addRowData', '4', datos, 'last');

$(".jqgrow td").first().addClass("ancho");
}

2 个答案:

答案 0 :(得分:0)

可以使用setLabel方法对齐标题。您可以使用以下代码更改列的对齐方式,如&#39; empleados&#39;&#39; empleados&#39;

grid.jqGrid ('setLabel', 'empleados', '', {'text-align':'center'});

希望它有效。

答案 1 :(得分:0)

感谢Oleg,我尝试了不同版本的jqgrid并且它有效。看起来像我正在使用的jqgrid的版本很久以前由同事修改了它的样式可能会导致边框问题。

所以,最后,它是版本的修改而不是错误。