我有一个非常简单的datatables对象。我将其绑定到对象数组,指定数据字段,然后它可以工作。问题是当我尝试实施CSV导出时。它总是只想导出表的第一行。有什么想法吗?
此刻是我的代码所在的位置。并且可以肯定的是,我已经确保包含了按钮和选择库,但这没什么区别。
<table id="tblData" style="display:none;">
<thead>
<tr id="trDataTableHeader">
<th data-s-type="string">Name</th>
<th data-s-type="string">Address</th>
<th data-s-type="string">Phone</th>
<th data-s-type="string">Website</th>
<th data-s-type="string">Types</th>
</tr>
</thead>
</table>
...
table = $('#tblData').DataTable({
dom: 'rtB',
data: tableData,
columns: [
{ "data": "name" },
{ "data": "address" },
{
"data": "phone_number",
defaultContent: ""
},
{
"data": "website",
defaultContent: ""
},
{
"data": "types",
defaultContent: ""
},
],
buttons: [{
extend: "csv",
text: "Export",
exportOptions: {
modifier: { search: "none", selected: false}
}
}],
select: false,
lengthChange: false,
sort: false,
paging: false
});
答案 0 :(得分:0)
经过大量的挖掘,删除列数据类型规范后偶然发现了一个问题。我收到一条错误消息,指出str.replace
不是一个函数。
事实证明,该页面上的另一个开发人员重写了parseInt
和parseFloat
基函数,并导致了问题,但是DataTables太优雅了,无法告诉我。
这就是为什么除非绝对必要,否则您不覆盖基本的javascript函数的原因。