2015-01-20 5 views
10

Ich versuche, einen benutzerdefinierten Fehlerhandler, wenn etwas schief geht (d. H. Der Server reagiert nicht) auf den Ajax-Aufruf zum Laden neuer Daten in meine Datentabelle.Legen Sie einen Fehlerhandler für JQuery-Datentypen Ajax Anruf

$table.DataTable().ajax.url(ajaxURL).load(); 

Standardmäßig zeigt sie eine Warnung, und ich kann, dass ein JavaScript-Fehler mit der folgenden Einstellung zu werfen ändern:

$.fn.dataTable.ext.errMode = 'throw'; 

Aber mit diesem, ich habe nur ein Fehler auf der Konsole angemeldet und ich bin mir nicht sicher, wie ich diesen geworfenen Fehler abfangen kann, so kann ich immer noch meinen eigenen Fehlerhandler nicht zur Verfügung stellen.

Es ist auch ein Fehlerereignis in der Dokumentation aufgelistet, aber das scheint nicht ausgelöst zu werden, so dass die folgenden Warnungen nie.

$table.on('error', function() { alert('error');}); 

Alles, was ich bisher gefunden habe, ist für den Legacy-Code, wie die fnServerData Einstellung, die ich in vermeiden möchte bekommen.

Gibt es eine Methode, um den Ajax-Fehlerrückruf in der API 1.10 zu setzen?

+1

Da Ajax-Aufrufe asynchron sind, kann es Bypass Ausnahmebehandlung. Der Fehler muss wahrscheinlich in seinem Code gefangen werden. Du hast Recht, das Fehlen eines Fehlerhandlers ist eine seltsame Unterlassung. Aus diesem Grund verwende ich die Ajax-Methoden von DataTables nicht. Ich benutze nur die jQuery 'ajax', die Erfolg und Fehler Handler hat, und neu die Tabelle von Grund auf neu zu zeichnen. – stakolee

Antwort