Javascript 如何截断datatable中的字段数据并添加<;更多选择>;最后查看整个字段数据?
我正在使用datatable在应用程序中显示报告。 有些栏目有大量数据,我想截断视图,并在末尾添加一个可单击的选项,以便用户可以单击它来查看通话的全部内容 我曾尝试使用省略号渲染来使用子字符串转换数据,但这不是一个可行的解决方案,因为我的表中也有下载选项。如果使用渲染器,下载的报告也会显示截断的格式 请建议我如何实现这一点,因为该表也有下载功能? 下面是相同的示例代码:Javascript 如何截断datatable中的字段数据并添加<;更多选择>;最后查看整个字段数据?,javascript,html,jquery,datatables,Javascript,Html,Jquery,Datatables,我正在使用datatable在应用程序中显示报告。 有些栏目有大量数据,我想截断视图,并在末尾添加一个可单击的选项,以便用户可以单击它来查看通话的全部内容 我曾尝试使用省略号渲染来使用子字符串转换数据,但这不是一个可行的解决方案,因为我的表中也有下载选项。如果使用渲染器,下载的报告也会显示截断的格式 请建议我如何实现这一点,因为该表也有下载功能? 下面是相同的示例代码: $(document).ready(function() { $("#TableName").Data
$(document).ready(function() {
$("#TableName").Datatable( {
language: { "search": "Filter"},
paging: false,
info: true,
scrollY:'50px',
scrollCollapse: true,
scrollX: false,
});
});
处理这一问题的一种方法是:
编号yyyy
S3
描述又很长。知识是一种美德,是一种美德,是一种美德,是一种美德。但是,在最低限度上,我们需要一个实验室来进行日常工作。两人或两人在一个无教区的房间里互相指责。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡。
描述又很长。知识是一种美德,是一种美德,是一种美德,是一种美德。但是,在最低限度上,我们需要一个实验室来进行日常工作。两人或两人在一个无教区的房间里互相指责。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡。
防火墙操作
受让人2
影响2
为方便起见,我将使用DataTables进行文本截断-但如果不适合您,您可以使用任何您喜欢的方法:
<script type="text/javascript" src="https://cdn.datatables.net/plug-ins/1.10.24/dataRender/ellipsis.js"></script>
较长的文本将显示在数据表中,截断为40个字符
Excel导出器将跳过可见的“说明”列:列:[0、1、3、4、5、6]
增强显示效果 您可以增强上述解决方案,以提供一个“更多”按钮,单击该按钮时,将显示全文而不是截断的文本 该按钮的样式类似于链接,以减少干扰:
。更多按钮{
背景:无!重要;
边界:无;
填充:0!重要;
/*可选的*/
字体系列:arial,无衬线;
/*输入具有特定于操作系统的字体系列*/
颜色:#069;
文字装饰:下划线;
光标:指针;
}
然后,列索引2的呈现函数更改为:
{
目标:[2],
呈现:函数(数据、类型、行、元){
如果(类型==‘显示’){
如果(数据长度>40){
返回''+数据.substr(0,38)+''…'+
“更多”;
}否则{
返回数据;
}
}否则{
返回数据;
}
}
},
showMore()
函数:
函数showMore(节点,rowId){
var rowData=$('#TableName').DataTable().rows(rowId.data().toArray()[0];
var全文=行数据[3];
$(node.parentNode).text(全文);
}
这是一个相当基本的功能-除非刷新表格,否则无法重新隐藏文本。感谢您分享此快速解决方案,因为我对javascript和jquery不熟悉。不过,这在showmore功能中运行良好。单击“显示更多”按钮时,列文本似乎与下一列数据重叠,而不是换行。