Javascript 删除<;span>;从XLS导出上的列
我有一个工作的jQuery DataTable(),它使用TableTools插件,在每一列的每一行中都有Javascript 删除<;span>;从XLS导出上的列,javascript,jquery,datatables,tabletools,Javascript,Jquery,Datatables,Tabletools,我有一个工作的jQuery DataTable(),它使用TableTools插件,在每一列的每一行中都有元素 单击导出按钮后,我想从导出的文件中隐藏/删除元素。不删除整个列,只删除该列中的元素 我怎样才能做到这一点?我知道如何从导出中删除整个列,但还没有找到从导出中删除特定元素的方法 谢谢 已更新 "oTableTools": { "sSwfPath": "/public/swf/copy_csv_xls_pdf.swf", "aButtons": [
元素
单击导出按钮后,我想从导出的文件中隐藏/删除
元素。不删除整个列,只删除该列中的
元素
我怎样才能做到这一点?我知道如何从导出中删除整个列,但还没有找到从导出中删除特定元素的方法
谢谢
已更新
"oTableTools": {
"sSwfPath": "/public/swf/copy_csv_xls_pdf.swf",
"aButtons": [
{
"sExtends": "print",
},
{
"sExtends": "copy",
},
{
"sExtends": "csv",
"fnCellRender": function ( sValue, iColumn, nTr, iDataIndex ) {
return sValue;
}
}
]
}
我已经准备好了
fnCellRender
,我只是不确定去除
元素的最佳方法。您需要使用按钮的fnCellRender
选项,从文档:
用于修改通过FGetTableData API方法(用于导出数据)从表中读取的数据。这允许在导出数据之前对数据进行预处理,例如剥离HTML的某些部分或对其他数据进行后期修复
阅读所有选项。在初始化时也要阅读附件
选项。其思想是定义TableTools
将使用的按钮,并在按钮定义中使用sExtends
选项来扩展TableTools
按钮行为
以下是一个例子:
$(document).ready( function () {
$('#example').dataTable( {
"dom": 'T<"clear">lfrtip',
"tableTools": {
"sSwfPath": "TableTools_files/copy_csv_xls_pdf.swf",
"aButtons": [
{
"sExtends": "csv", //extend the default csv
"fnCellRender": function ( sValue, iColumn, nTr, iDataIndex ) {
if ( iColumn === 5 ) {
//feel free to modify the value here
return sValue +" TableTools";
}
return sValue;
}
}
]
}
} );
} );
$(文档).ready(函数(){
$('#示例')。数据表({
“dom”:“Tlfrtip”,
“表格工具”:{
“sSwfPath”:“TableTools\u files/copy\u csv\u xls\u pdf.swf”,
“阿布顿”:[
{
“sExtends”:“csv”//扩展默认的csv
“fnCellRender”:函数(sValue、iColumn、nTr、iDataIndex){
如果(iColumn==5){
//请随意修改此处的值
返回sValue+“TableTools”;
}
返回值;
}
}
]
}
} );
} );
阅读示例中的注释,根据您的需要进行调整,随时发表评论
编辑:
阅读所有这篇文章,使用更适合您需要的选项在我的测试中,最新的TableTools已经在CSV文件中剥离HTML标记。看 要使其正常工作,您需要删除
fnCellRender
。显然,如果存在fnCellRender
,默认情况下TableTools不会执行HTML剥离
此外,尽管数据集可以自动确定列数据类型,但您可能需要考虑将其设置为<代码> HTML>代码>进行搜索和筛选。 从手册中:
在客户端处理模式下操作时,DataTables可以处理 适用于以下情况的手册中每个单元格中显示的数据: 正在执行的动作。例如,HTML标记将被删除 来自用于筛选匹配的字符串,而排序格式可能 删除货币符号以允许对货币值进行排序 数字上 DataTables有许多内置类型,这些类型自动 检测到:html
-html标记的基本字符串处理
- 排序-在删除HTML标记的情况下进行排序
- 筛选-从筛选字符串中删除HTML标记
谢谢你的回答。我已经更新了我的问题,加入了我的“oTableTools”代码。我不知道如何从字符串中剥离
元素在我的测试中,最新的TableTools已经在CSV文件中剥离HTML标记。您使用的是什么版本的DataTables和TableTools?@Gyrocode.com我已经用TableTools 2.2.4
对其进行了测试,但没有。@Kstro21,请参见下面的答案和示例。为了让TableTools在默认情况下剥离HTML标记,必须删除fnCellRender
。这些答案是否有助于解决您的问题?还有问题吗?你说得对,如果我删除fnCellRender
它就可以工作了@585connor应该升级您的TableTools
版本或使用我的答案。@Kstro21,您的答案也是正确的,因为根据文档fnCellRender
可以用来剥离HTML的某些部分,这给了用户更多的控制权。我更新到了TableTools的最新稳定版本,并删除了fnCellRender。它剥离标签,但保留其内容。我想完全删除
元素。@585connor,那么您肯定需要按照@Kstro21的建议使用fnCellRender
。你能更新你的问题,发布一个样本单元格内容并解释你想删除的部分吗?