我一直试图在jqGrid中"合并"单元格,也就是说,我想让特定行的单元格具有colspan = 2(或更多).到目前为止,我已经能够使用列模型中的cellattr选项使边框正常工作,如下所示:
colModel = { name: "a", width=50,
cellattr: function(rowId, tv, rawObject, cm, rdata) {
if (rowId < 5) { return 'sytle="border-right:0px"'; } },
name: "b", width=50,
cellattr: function(rowId, tv, rawObject, cm, rdata) {
if (rowId < 5) { return 'sytle="border-left:0px"'; } } };
Run Code Online (Sandbox Code Playgroud)
这只是删除了我要合并的单元格的边框(a&b到第5行).但是,如果我在任何这些框中添加文本,text-align显然不会正常工作,如果文本大于50像素,文本就会被切断.
我可以做一些疯狂的事情,我通过将所有文本切成两半进行居中对齐,并将每一半分别添加到右对齐和左对齐下的列"a"和"b".但是,似乎应该有更好的方法.
Ole*_*leg 13
我发现你的问题非常有趣,所以+1来自我.
在我看来,使用colspan=2是你真正需要的.要在行中具有相同数量的列,colspan=2我建议隐藏行中的下一个<td>元素:
{
name:'a',index:'a', width:50,
cellattr: function(rowId, tv, rawObject, cm, rdata) {
if (Number(rowId) < 5) { return ' colspan=2' }
}
},
{
name:'b',index:'b', width:50,
cellattr: function(rowId, tv, rawObject, cm, rdata) {
if (Number(rowId) < 5) { return ' style="display:none;"' }
}
}
Run Code Online (Sandbox Code Playgroud)
我只测试了几次实现,但似乎有效:

你可以在这里看到的演示.
更新:另一个答案显示了如何rowspan在jqGrid中使用属性.
| 归档时间: |
|
| 查看次数: |
28211 次 |
| 最近记录: |