2016-07-27 10 views
1

Da ich ähnliche Aktionen für die Auswahl einer Zeile auf einer DataTable haben, möchte ich on() Funktion von seiner API (nicht von jQuery) verwenden. Auch wenn erwähnt wird, dass ich mehrere Ereignisnamen mit einem Leerzeichen trennen kann, bekommt es eigentlich nur das letzte geschriebene. Siehe this example, wo ich eine „markieren Markierung entfernen“ Ereignisse hinzugefügt zu hören:jQuery DataTables On() Ereignisse Listener mit mehreren Ereignissen

t.on("select deselect", function(e, dt, type, indexes) { console.log("select deselect"); });

Jede Idee?

+4

Es ist ein Fehler https://github.com/DataTables/DataTables/issues/836 –

Antwort

1

die Namespaced Ereignisnamen scheint es

Wechsel zu

t.on("select.dt deselect.dt" ... 
+0

Aus dem Grund, warum das funktioniert, sehen Sie sich den Fehler von @and an Rey-Etumyan - Ich habe es nur zufällig entdeckt. –

0

Eine andere Lösung für dieses spezielle Szenario beheben konnten mehrere Ereignisse 1 von 1 in einer Schleife

var eventNames = ['select', 'deselect']; 

for(i=0;i<eventNames.length;i++) 
{ 
    t.on(eventNames[i], function(e, dt, type, indexes) { 
     console.log(e); // it will tell you the event 
     // you can also do more according to the event like 
     //doSomeThing(e,indexes); 
    }); 
} 
anzuwenden sein