【发布时间】:2018-12-05 11:21:37
【问题描述】:
我正在尝试在 Datatable 中的数据中显示数据,并允许用户以所需的格式下载。但这似乎不起作用我的数据既没有显示也没有下载。这是目前正在使用的代码。
document.addEventListener("DOMContentLoaded", function(event) {
var dTable=$('#ex-table').DataTable({
"bDestroy": true,
dom: 'lfrtipB',
buttons: [
{
extend: 'copyHtml5',
title: 'Records'
},
{
extend: 'csvHtml5',
title: 'Records'
},
{
extend: 'excelHtml5',
title: 'Records'
},
{
extend: 'pdfHtml5',
title: 'Records'
},
'print'
],
lengthMenu: [[5, 20, 50, -1], [5, 20, 50, "All"]]
});
});
var databaseRef = firebase.database().ref("users/");
var table = $('#ex-table').DataTable();
databaseRef.on("child_added", function(data) {
var storageObj = data.val();
var dataSet = [storageObj.Department, storageObj.EmpId, storageObj.Name, storageObj.Position];
table.rows.add([dataSet]).draw();
});
这是我正在尝试的代码的代码笔https://codepen.io/jagrutitiwari/pen/WYBWVy。我哪里错了?
更新:
更新2
安全规则:
{
"rules": {
".read": "auth != null",
".write": "auth != null"
}
}
更新 3
如果我将 dataSrc 添加到 Datatable 中,它可以工作,但我现在在 Datatable 中看不到导出按钮。
document.addEventListener("DOMContentLoaded", function(event) {
var dTable=$('#ex-table').DataTable({
"bDestroy": true,
dom: 'lfrtipB',
data: dataSrc,
buttons: [
{
extend: 'copyHtml5',
title: 'Records'
},
{
extend: 'csvHtml5',
title: 'Records'
},
{
extend: 'excelHtml5',
title: 'Records'
},
{
extend: 'pdfHtml5',
title: 'Records'
},
'print'
],
lengthMenu: [[5, 20, 50, -1], [5, 20, 50, "All"]]
});
});
【问题讨论】:
-
试用你的 codepen 我感觉你的数据库是空的(对于
users节点) -
我已经用数据截图更新了我的问题。请再检查一遍好吗?
-
您能否也分享您的安全规则。因为显然用户需要经过身份验证才能读取数据,请参阅您共享的屏幕顶部的消息。
-
使用安全规则更新问题
标签: javascript firebase firebase-realtime-database datatables