jqGrid将colspan应用于列标题

时间:2010-04-01 09:34:09

标签: jqgrid html-table

jqGrid是否支持列标题上的colspan?我觉得这个网格控件很有用,因为它有很多功能,而且很重要的是很多文档。

样式表怎么样?如何改变网格的外观和感觉?

非常感谢

5 个答案:

答案 0 :(得分:1)

您可以通过从http://jqueryui.com/themeroller/下载主题来更改外观 - 该网站甚至允许您自定义它们。然后将主题放入您的页面。

colspan是什么意思?如果你的意思是有一个标题跨越多列然后没有,我不相信它支持。

答案 1 :(得分:1)

关于colspan,

jqGrid官方仍然不支持,这是解决方法,

jQgrid:多列列标题

@ Oleg

发布的工作示例

答案 2 :(得分:1)

自版本4.2.0起支持标头分组。见here

答案 3 :(得分:0)

我也在搜索,我没有找到任何答案。

我设法获得了两行标题:

----------------------------------------------------------
|  Col Group 1 (3 Columns)     | Col Group 2 (2 Columns) |
----------------------------------------------------------
|  Col 1  |  Col 2  |   Col 3  |    Col 4    |   Col 5   |
----------------------------------------------------------

使用gridComplete事件添加行.before

上定义的行
gridComplete: function (){
    if (!$('#super_header').length) {
        $('#jqgridContainer tr.ui-jqgrid-labels').before('<tr id="super_header" class="bigHeader ui-jqgrid-labels"><th class="ui-state-default ui-th-column ui-th-ltr" colspan="3">Col Group 1</th><th class="ui-state-default ui-th-column ui-th-ltr" colspan="2">Col Group 2</th></tr>');
    }
},

我希望这会有所帮助。

<强>编辑: 经过更多的测试后,我意识到它不能很好地工作并且它会使第二行标题的宽度变得混乱(Col 1Col 5

答案 4 :(得分:0)

您可以使用

    jQuery("#grid").jqGrid('setGroupHeaders', {
  useColSpanStyle: false, 
  groupHeaders:[
    {startColumnName: 'col2', numberOfColumns: 3, titleText: 'Col Group 1 (3 Columns) '},
    {startColumnName: 'col4', numberOfColumns: 2, titleText: ' Col Group 2 (2 Columns) '}
  ]
});

设置列参数。

要删除您可以使用的列标题,

jQuery("#grid").jqGrid('destroyGroupHeader'); Or
jQuery("#grid").jqGrid('destroyGroupHeader', false);