2016-04-18 12 views
2

Ich habe ein Datentabellen-Plugin und erstellt die Einrichtung eines neuen Tabelle aus einer JSON-Datei: mit einer bestimmten IDDatentabellen: Wählen Sie die Zeile mit bestimmten ID

var table= $("#mytable").DataTable({ 

    ajax: "list.json", 
    columns: [ 
     {"data": "name"}, 
     {"data": "location"}, 
     {"data": "date"} 
    ] 
}); 

Jetzt möchte ich eine .active Klasse in eine Zeile hinzuzufügen :

table.on('xhr', function() { 
    table.row("#id_1").addClass("active"); 
} 

(die IDs für die Zeilen hat während des Plugin-Setup und sind an Ort und Stelle festgelegt wurde). Allerdings bekomme ich diesen Fehler:

undefined is not a function 

wie es keine Zeile mit dieser ID finden kann, aber ich es tun. Irgendwelche Ideen?

+3

'table.row ("# ID_1")' 'nicht jQuery' gewickelt Objekt zurückkehren .. Versuchen' $ (table.row ("# id_1 ")). addClass' – Rayon

+0

Rayon, das war ein sehr guter Punkt! Du bist wieder mein Retter. Luca vervollständigte die Antwort mit einer Erwähnung von node() auch! Vielen Dank! Ich muss noch viel lernen. – sdvnksv

+0

: P Ich bin froh, dass es geholfen hat! _Happy Coding_ – Rayon

Antwort

3

Die Methode Datatables .row() gibt keinen DOM-Knoten zurück, Sie müssen ihn mit .node() abrufen, nachdem Sie ihn ausgewählt haben.

var row = table.row("#id_1").node(); $(row).addClass('active');

Datatables .row()

Datatables .node()

+0

Genau! Funktioniert jetzt gut! Vielen Dank! – sdvnksv

Verwandte Themen