Ich habe ein JavaScript-Objekt, ich versuche, eine neue Zeile der Datentabelle hinzuzufügen. Eine Spalte ist ein Feld und die andere Spalte sollte eine Schaltfläche enthalten.Schaltfläche in einer neuen Zeile auf Datentabelle hinzufügen, undefined
var appendLastCategory = function() {
var obj = {
id: 'jh2i4h34ubi43',
name: 'Lolo',
};
$('#categoriesList').DataTable().row.add({
name: obj.name, //First column
mRender: function() { //Second column
return "<a class='md-btn' onClick='deleteCategory(this, "" + obj.id + "")'>Delete</a>";
}
}).draw();
};
Dann, wenn ich in der Schaltfläche "Löschen" klicken, Im in dem 'id' Wert 'undefined' zu werden. Und ich weiß nicht warum, denn wenn ich die Tabelle initialisiere und sie mit den Anfangsdaten ausfülle und den 'mRender' meistens auf die gleiche Weise benutze, funktioniert es.
var deleteCategory = function(element, id) {
console.log(id);
//Blah blah, all the code to delete on backend and remove the row
};
Können Sie im resultierenden Markup bestätigen, dass die resultierenden 'onClick'-Attribute die ID enthalten? Dh 'deleteCategory (this," jh2i4h34ubi43 ")' –
Ich kann bestätigen, dass selbst wenn ich die 'id' im Code brenne, es weiterhin undefined zeigt. –