Javascript jQuery数据表条件设置
我想知道是否有一种方法可以有条件地设置jQuery数据表的属性,从而避免重复使用重复属性的几乎相同的表转换调用 例如,我有一个表,如果某个布尔值为true,我想在该表上提供一个Excel导出按钮,但如果该布尔值为false,则不提供该表Javascript jQuery数据表条件设置,javascript,jquery,datatables,Javascript,Jquery,Datatables,我想知道是否有一种方法可以有条件地设置jQuery数据表的属性,从而避免重复使用重复属性的几乎相同的表转换调用 例如,我有一个表,如果某个布尔值为true,我想在该表上提供一个Excel导出按钮,但如果该布尔值为false,则不提供该表 if blnExport { $('#tblDetail').DataTable({ bPaginate: false, aaSorting: [], language: { emptyTable: "No
if blnExport {
$('#tblDetail').DataTable({
bPaginate: false,
aaSorting: [],
language: { emptyTable: "No Results Found" },
dom: 'Bfrtip',
buttons: [
{
extend: 'excel',
text: 'Export to Excel',
exportOptions: {
columns: [0, 1, 2, 3, 4, 5, 6, 7]
}
}]
});
}
else {
$('#tblDetail').DataTable({
bPaginate: false,
aaSorting: [],
language: { emptyTable: "No Results Found" }
});
}
有没有办法通过一次转换调用来实现这一点?谢谢。假设您有这样一个
函数:
function myFunction(params) {
//Do something
}
让我们考虑这个例子:
var input = {
a: 1;
};
if (Math.floor(Math.random() * 2)) {
input.b = 2;
}
myFunction(input);
正如您在示例中所看到的,a
始终是input
的成员,但我们随机决定b
是否应该在其中。基本上,这个想法是:
- 使用您确实需要的内容创建
input
对象
- 检查所需内容并添加
- 将其传递给
功能
让我们将此应用于您的具体案例:
var input = {
bPaginate: false,
aaSorting: [],
language: { emptyTable: "No Results Found" }
};
if (blnExport) {
input.dom = 'Bfrtip';
input.buttons = [{
extend: 'excel',
text: 'Export to Excel',
exportOptions: {
columns: [0, 1, 2, 3, 4, 5, 6, 7]
}
}];
}
$('#tblDetail').DataTable(input);
条件是什么?如果要显示excel按钮,代码是什么?如果不显示,代码是什么?我问题中的代码是我目前如何处理的。如果blnExport为true,那么我将创建一个带有excel导出按钮的数据表。如果blnExport为false,我将创建一个没有excel按钮的datatable。这是我的问题。有没有办法只进行一次数据表转换,然后根据特定条件设置一些属性?这样,无论blnExport是什么,我都不必复制相同的属性。在本例中,如果blnExport为true,我希望包含excel按钮。