我们正在为我们的 jquery 数据表使用 Scroller 插件以允许虚拟滚动。但是,我们需要支持单元格内的文本换行,因为用户希望查看整个文本而不是截断的文本。我观察到它默认不换行文本。有没有办法支持这个功能?任何可能的解决方法?
提琴手 https://jsfiddle.net/Vimalan/2koex0bt/1/
代码:
<table id="example" class="display" cellspacing="0" width="100%"></table>
js代码:
var detailsSample = "DataTables and its extensions are extremely configurable libraries and almost every aspect of the enhancements they make to HTML tables can be customised. Features can be enabled, disabled or customised to meet your exact needs for your table implementations."
var dataList = [];
for (var i=1; i<=500; i++)
{
var dataRow = {};
dataRow.ID = i;
dataRow.FirstName = "First Name " + i;
dataRow.LastName = "Last Name " + i;
if (i%5 ==0)
{
dataRow.Details = detailsSample;
}
else
{
dataRow.Details = "Large text "+i;
}
dataRow.Country = "Country Name";
dataList.push(dataRow);
}
$('#example').DataTable( {
data: dataList,
deferRender: true,
scrollX: true,
scrollY: 200,
scrollCollapse: true,
scroller: true,
searching: false,
paging: true,
info: false,
columns: [
{ title: "ID", data: "ID" },
{ title: "First Name", data: "FirstName" },
{ title: "Change Summary", data: "LastName"},
{ title: "Details", data: "Details", "width": "400px" },
{ title: "Country", data: "Country" }
]
} );
期待
在上表中,“详细信息”列的宽度应始终为 400 像素,并且该列中的文本应换行。
任何建议将不胜感激。
原文由 JGV 发布,翻译遵循 CC BY-SA 4.0 许可协议
通过将列数据包装在 div 中并为 div 设置 white-space、width css 属性找到了解决方案。
提琴手: https ://jsfiddle.net/Vimalan/2koex0bt/6/
JS
CSS