Jquery Jqgrid列标题和数据未对齐
我有一个表,它是动态的,是在C#中的代码后面生成的。我使用tabletogrid将这个html表转换为Jqgrid,我使用的代码是Jquery Jqgrid列标题和数据未对齐,jquery,jqgrid,Jquery,Jqgrid,我有一个表,它是动态的,是在C#中的代码后面生成的。我使用tabletogrid将这个html表转换为Jqgrid,我使用的代码是 tableToGrid('#gvSearchDocuments', { height: 'auto', autowidth:true, multiselect: true, pager
tableToGrid('#gvSearchDocuments',
{ height: 'auto',
autowidth:true,
multiselect: true,
pager: 'pagersearch',
rowList: [20, 30, 50],
colNames: ['ID','Message Date', 'Fund', 'Partner', 'Menu', 'Sub Menu', 'Document Name', 'Document Description', 'Type'],
colModel: [
{ name: 'ID', hidden: true},
{ name: 'MessageDate',
align: 'right',
sorttype: 'date',
formatter: 'date',
formatoptions: { newformat: 'M-d-Y' }
},
{ name: 'Fund', align: 'left'},
{ name: 'Partner', align: 'left' },
{ name: 'Menu', align: 'left'},
{ name: 'SubMenu', align: 'left'},
{ name: 'Documentname', align: 'left' },
{ name: 'DocumentDescription', align: 'left'},
{ name: 'Type', align: 'left' }
]
});
我遇到的问题是,生成jqgrid时,列标题和数据没有正确对齐。我尝试使用autoWidth、width和shrinkToFit,但没有成功。这就是我的网格在IE、Firefox和Chrome中的显示方式
我花了一天多的时间在这件事上,它慢慢地折磨着我。任何帮助都会很好 我终于解决了这个问题 在使用
display:none调用tableToGrid
之前,我错误地隐藏了普通HTML表代码>转换后用显示:块显示代码>。显示:块代码>被数据单元继承,对它们产生负面影响。在调整标题大小时,它们的大小被阻止(一旦达到显示整个单元格内容所需的最小宽度,它们就停止调整大小)
请参见此以重现问题。
如果注释掉脚本中的最后一行,问题就会消失
顺便说一句,我知道tableToGrid
不是很好(在性能方面很糟糕),但在我的应用程序中的特殊情况下,我可以使用的唯一方法是不需要大量重写遗留代码。尝试将此属性应用到表中
table-layout: fixed;
这对我有用。我希望这可能对您有所帮助。使用编辑css
.ui-jqgrid tr.jqgrow td{
white-space: normal;
}
我不建议您使用tableToGrid
。你应该直接创建jqGrid。你能用页面中的实际html设置一个JSFIDLE,这样我们就可以看到它工作了吗?你可以将所有列的格式,除了MessageDate
设置为align:“left”
。我遗漏了什么吗?如果没有包含输入数据的HTML表,就无法重现问题。另外,我同意前面的评论(@Tommi)。可以从所有列中删除align:'left'
属性,因为'left'
是align
的默认值。然而,主要的问题是柱子的宽度。Toni Toni Chopper开始悬赏,因为他可能有密切的问题。如果他发布他的演示会更好。使用非常旧的tableToGrid
是一个非常糟糕的选择,尤其是当表包含格式化数据而不是纯数据时。请给我们一个JSFIDLE来帮助您。jqGrid允许您用数据填充网格,而不仅仅是字符串。因此,例如,数字和日期将正确排序,并与所使用的区域设置或格式化程序选项相对应。只有在这之后,人们才能真正使用数据的本地排序、分页和过滤tableToGrid
针对addRowData
填充网格,将所有数据放在一页上。如果您想在该方式中放置20多行,那么在下一次排序后,您将只看到20行(因为使用rowNum:20
并没有指定寻呼机)。这只是一个例子。还有更多的问题。Plz 4nsw3r d4 Q43使用h4lfw4y d3c3nt 3英语,因为它更容易阅读,因此也更容易理解,正如您现在可能已经注意到的那样。