k3nguruh
Erfahrenes Mitglied
Hallo,
ich versuche mich gerade mit dem JQuery Plugin "DataTables" und stoße da auf ein Problem.
Hier erstmal was funktioniert (in sehr gekürzter Form):
Da ich die Button(s) aber mehrmals verwenden möchte, habe ich mir gedacht, dass ich dieses auslagere und sie als Default setze
Was jetzt auch noch funktioniert.
OK, da aber nicht in allen Tabellen die "columns: ':gt(0)'" vorkommt, mal gar nichts, oder mal columns: ':gt(1)' etc. versuchte ich jetzt folgendes
und das funktioniert jetzt nicht mehr. Es wird mir zwar noch der Button wie er sein soll angezeigt, aber er ist jetzt kein "Dropdown" mehr, wo man die einzelnen Splaten auswählen kann.
Man könnte jetzt zwar die Button jedesmal neu vergeben (wie im 1. Bsp.), aber das wäre massig an Code, der sich nur mit kleinen Änderungen jedesmal wiederholen würde und ich glaube nicht, dass das im Sinne des Erfinders wäre.
Vll verstehe ich das ganze aber auch nur falsch.
Ich hoffe das es einigermassen verständlich rübergekommen ist und mir jemand helfen kann.
ich versuche mich gerade mit dem JQuery Plugin "DataTables" und stoße da auf ein Problem.
Hier erstmal was funktioniert (in sehr gekürzter Form):
Javascript:
var table = $('#table').dataTable({
buttons: [
{
extend: 'colvis',
text: '<i class="fas fa-table"></i>',
titleAttr: 'Spalten (an/aus)',
columns: ':gt(0)'
},
]
});
Javascript:
$.extend(true, $.fn.dataTable.defaults, {
buttons: [
{
extend: 'colvis',
text: '<i class="fas fa-table"></i>',
titleAttr: 'Spalten (an/aus)',
columns: ':gt(0)'
},
]
});
var table = $('#table').dataTable();
OK, da aber nicht in allen Tabellen die "columns: ':gt(0)'" vorkommt, mal gar nichts, oder mal columns: ':gt(1)' etc. versuchte ich jetzt folgendes
Javascript:
$.extend(true, $.fn.dataTable.defaults, {
buttons: [
{
extend: 'colvis',
text: '<i class="fas fa-table"></i>',
titleAttr: 'Spalten (an/aus)',
//columns: ':gt(0)' // <-- Wird nicht immer benötigt, bzw. kann auch mal ':gt(1)' etc. sein
},
]
});
$.fn.dataTable.ext.buttons.colvis = {
columns: ':gt(0)'
};
var table = $('#table').dataTable();
Man könnte jetzt zwar die Button jedesmal neu vergeben (wie im 1. Bsp.), aber das wäre massig an Code, der sich nur mit kleinen Änderungen jedesmal wiederholen würde und ich glaube nicht, dass das im Sinne des Erfinders wäre.
Vll verstehe ich das ganze aber auch nur falsch.
Ich hoffe das es einigermassen verständlich rübergekommen ist und mir jemand helfen kann.
Zuletzt bearbeitet: