У меня проблема с таблицей данных. Я буду отображать данные из базы данных в таблицу с помощью AJAX. Я сделал фильтр, который отправляет данные в php-файл с ajax.
И он работает без проблем, но я добавил функцию скрытия столбцов и после скрытия любых столбцов я не могу фильтровать по полям. ошибка:
Uncaught TypeError: Невозможно прочитать свойство 'значение' с нулевым значением в getPage (test.php? login = yes: 2030) при запуске (test.php? login = yes: 2002) в HTMLButtonElement.onclick (test.php? login = yes: 2425)
function getPage() {
var odTermin = document.getElementById("odTermin").value;
var doTermin = document.getElementById("doTermin").value;
var firma = document.getElementById("firma").value;
var miejscowosc = document.getElementById("miejscowosc").value;
var kierowca = document.getElementById("kierowca").value;
var iloscPalet = document.getElementById("iloscPalet").value;
var wz = document.getElementById("wz").value;
var uwagi = document.getElementById("uwagi").value;
var GotoweSelect = document.getElementById("GotoweSelect").value;
var ZaladowanySelect = document.getElementById("ZaladowanySelect").value;
var PrzerzutySelect = document.getElementById("PrzerzutySelect").value;
var OdbiorySelect = document.getElementById("OdbiorySelect").value;
var OkresSelect = document.getElementById("OkresSelect").value;
var DokumentSelect = document.getElementById("DokumentSelect").value;
var ZadGotSelect = document.getElementById("ZadGotSelect").value;
var raben;
if ($("#raben").is(":checked")) {
raben = 'T';
} else {
raben = 'N';
}
if (firma) {
firma = firma;
} else {
firma = 'null';
}
if (miejscowosc) {
miejscowosc = miejscowosc;
} else {
miejscowosc = 'null';
}
if (kierowca) {
kierowca = kierowca;
} else {
kierowca = 'null';
}
if (iloscPalet) {
iloscPalet = iloscPalet;
} else {
iloscPalet = 'null';
}
if (wz) {
wz = wz;
} else {
wz = 'null';
}
if (uwagi) {
uwagi = uwagi;
} else {
uwagi = 'null';
}
if (GotoweSelect) {
GotoweSelect = GotoweSelect;
} else {
GotoweSelect = 'null';
}
if (ZaladowanySelect) {
ZaladowanySelect = ZaladowanySelect;
} else {
ZaladowanySelect = 'null';
}
if (PrzerzutySelect) {
PrzerzutySelect = PrzerzutySelect;
} else {
PrzerzutySelect = 'null';
}
if (OdbiorySelect) {
OdbiorySelect = OdbiorySelect;
} else {
OdbiorySelect = 'null';
}
if (OkresSelect) {
OkresSelect = OkresSelect;
} else {
OkresSelect = 'null';
}
if (DokumentSelect) {
DokumentSelect = DokumentSelect;
} else {
DokumentSelect = 'null';
}
if (ZadGotSelect) {
ZadGotSelect = ZadGotSelect;
} else {
ZadGotSelect = 'null';
}
$('document').ready(function () {
$.ajax({
type: 'POST',
url: 'ajaxfile.php',
dataType: 'json',
data: 'od='+odTermin+
'&do='+doTermin+
'&raben='+raben+
'&firma='+firma+
'&miejscowosc='+miejscowosc+
'&kierowca='+kierowca+
'&iloscPalet='+iloscPalet+
'&wz='+wz+
'&uwagi='+uwagi+
'&GotoweSelect='+GotoweSelect+
'&ZaladowanySelect='+ZaladowanySelect+
'&PrzerzutySelect='+PrzerzutySelect+
'&OdbiorySelect='+OdbiorySelect+
'&OkresSelect='+OkresSelect+
'&DokumentSelect='+DokumentSelect+
'&ZadGotSelect='+ZadGotSelect,
cache: false,
success: function (result) {
if (result == null){
alert('Brak zleceń na ten dzień !');
}else {
console.log(result);
var json = Object.values(result);
var table = $('#example').DataTable({
destroy: true,
responsive: true,
stateSave: true,
dom: 'lfrtBip',
buttons: [
'excel', 'pdf', 'print'
],
"searching": false,
"data": result,
"columns": [
{"data": "ID", fnCreatedCell: function (nTd, sData, oData, iRow, iCol) {
var href;
if (oData.CZYPRZERZUTY == 'T'){
href = '/formularze/transport/przerzuty/edycja.php?ID=';
}else if (oData.CZYODBIORY == 'T'){
href = '/formularze/transport/odbiory/edycja.php?ID=';
}else{
href = '/formularze/transport/prosty/edycja.php?ID=';
}
$(nTd).html("<a href='"+ href + oData.ID + "'>" + oData.ID + "</a> " +
"- <a onclick='return confirm(\"Czy napewno chcesz usunąć ?\")' href='/formularze/transport/wyswietl/php/usun.php?ID=" + oData.ID + "&ID_TASK=" + oData.IDTASK + "'>" +
"<span style='font-size: 12px;'>USUŃ</span></a>");
}},
{"data": "FIRMA"},
{"data": "MIEJSCOWOSC"},
{"data": "MAGAZYNWYDAJACY"},
{"data": "MAGAZYNPRZYJMUJACY"},
{"data": "KIEROWCA"},
{"data": "ILOSCMIEJSCPALETOWYCH"},
{"data": "ILOSCWZ"},
{"data": "UWAGI"},
{"data": "DATA"},
{"data": "CZYGOTOWE", fnCreatedCell: function (nTd, sData, oData, iRow, iCol) {
var checkGotowe;
if (oData.CZYGOTOWE == 'T')
checkGotowe = 'checked';
else
checkGotowe = '';
$(nTd).html("<input type='checkbox'" + checkGotowe + " id='GotoweCheck_" + oData.ID + "' onclick='CzyGotowe(" + oData.ID + ")' > ");
}},
{"data": "ZALADOWANY", fnCreatedCell: function (nTd, sData, oData, iRow, iCol) {
var checkZaladowane;
if (oData.ZALADOWANY == 'T')
checkZaladowane = 'checked';
else
checkZaladowane = '';
$(nTd).html("<input type='checkbox'" + checkZaladowane + " id='ZaladowaneCheck_" + oData.ID + "' onclick='CzyZaladowane(" + oData.ID + ")' >");
}},
{"data": "DOKUMENT", fnCreatedCell: function (nTd, sData, oData, iRow, iCol) {
var checkDokument;
if (oData.DOKUMENT == 'T')
checkDokument = 'checked';
else
checkDokument = '';
$(nTd).html("<input type='checkbox'" + checkDokument + " id='DokumentCheck_" + oData.ID + "' onclick='CzyDokument(" + oData.ID + ")' >");
}},
{"data": "EKSPORT", fnCreatedCell: function (nTd, sData, oData, iRow, iCol) {
var checkEKSPORT;
if (oData.EKSPORT == 'T')
checkEKSPORT = 'checked';
else
checkEKSPORT = '';
$(nTd).html("<input type='checkbox'" + checkEKSPORT + " id='EksportCheck_" + oData.ID + "' onclick='CzyEksport(" + oData.ID + ")' >");
}},
{"data": "CZYPRZERZUTY"},
{"data": "CZYODBIORY"},
{"data": "OKRES"},
{"data": "ZADGOT"}
]
});
$('.toggle-vis').on( 'click', function (e) {
// Get the column API object
var column = table.column( $(this).attr('data-column'));
// Toggle the visibility
column.visible( ! column.visible() );
} );
}
}