Ich versuche, alle Zellen in einer Spalte (Spaltenindex 1) in einer Datatable iterieren und die Hintergrundfarbe ändern Sie den folgenden Code auf Basis von Zellwert mit:jQuery Tables iterieren Zeilen und Wechselzelle Hintergrund
var table = $('#my_table').DataTable({...});
console.log("next, iterate over rows in table: "+table);
table.rows().every(function (rowIdx, tableLoop, rowLoop) {
console.log("looping over rows");
var cell = table.cell({ row: rowIdx, column: 1 }).node();
if (cell.data() == 'mouse'){
$(cell).css('background-color', 'orange');
}
});
console.log("finished iterating over rows ");
Die Tabelle zeigt die Daten in Ordnung an. jedoch die Konsolenprotokoll druckt:
>>next, iterate over rows, table: [object Object]
>>finished iterating over rows
dh die
table.rows().every(function (...){...}
nicht eingetragen ist. Ich habe aus DataTables-Beispielen kopiert und eingefügt, und ich habe keine Ahnung, warum es nicht ausgeführt wird.
Die einzige Sache, die ich denken kann, ist, dass die DataTables Dokumente hier: https://datatables.net/reference/api/rows().every() Erwähnung-Iterate über jede ausgewählte Reihe. Keine der Zeilen in der Tabelle sind ausgewählt, ich möchte nur durch jede Zeile durchlaufen (und Zellfarbe ändern) ob es ausgewählt ist oder nicht.
Hinweis ich auch versucht:
table.rows().eq(0).each(function (index) {
var row = table.row(index);
var data = row.data();
console.log(data)
});
Und dies entweder nicht ausgeführt wird (console.log etwas druckt nicht aus dem Inneren der Funktion).
Ich habe mehrere Tabellen auf der Seite, so wird dies nicht funktionieren. Ich habe versucht, nur meine Tabelle auszuwählen, aber ich weiß nicht, wie ich die td auch auswählen soll, zB $ ('# my_table td'), aber das hat nicht funktioniert. –
Ich musste Ihren Code innerhalb eines "FnInitComplete": -Funktionsblocks (oSettings, json) {} innerhalb der DataTable-Deklaration hinzufügen. –