Ajax-Scripts kinderleicht debuggen - jQuery Quick-Tip

Ajax-Scripts kinderleicht debuggen - jQuery Quick-Tip
Von Lars Ebert am 02.05.11, 23:09
Kategorien: JavaScript, jQuery, Programmieren, Quick-Tips and Tipps

Mit jQuery sind Ajax-Aufrufe wirklich kinderleicht. So kann man zum Beispiel ganz einfach auf folgende Weise Daten vom Server per Get-Request bekommen:


$.get('data.php', function(data) {
  //do something
});

In der Variable data steht dann die Antwort des Servers, im Normalfall also der Inhalt der Seite oder das, was vom PHP-Script ausgegeben wird.

Debugging des aufgerufenen Scripts

In einem Kommentar fragte mich Michael:

Also mit Hilfe von Ajax feuere ich in ein von mir angegebenes Script.

Frage: Wie bekomme ich mögliche Fehlermeldungen im angegebenen Script mit?

Ich meine, ich habe ein ErrorHandling implementiert, welches Fehler in die Datenbank schreibt. Doch einen “Fatal Error” bekomme ich in keinsterweise mit. Gut an dieser Stelle könntest Du sagen: Halt das Script einfach! Dennoch:

Gibt es eine Möglichkeit, in der update-Anweisung z.B. ein ‘target: “#msg”‘ für Fehlermeldungen zu setzen?

Meiner Meinung nach ist es am einfachsten, sich in diesem Fall einfach die gesamte Antwort des Servers per alert ausgeben zu lassen.


$.get('data.php', function(data) {
  alert(data);
});

So kann man sich den ausgeworfenen PHP-Error so durchlesen, als hätte man das Script selbst geöffnet. Wenn man noch einen Schritt weiter gehen will, kann man auch alle fehlerhaften Antworten per Ajax an den Server zurück schicken und dort speichern.

Um die Fehler des Servers zu überprüfen, könnte man zum Beispiel so vorgehen:


$.get('data.php', function(data) {
  if(data.indexOf("Fatal Error") != -1)
  {
    //data an Server zum Speichern schicken
  }
});

Ich hoffe, damit ist Michaels Frage beantwortet und vielen anderen Scriptern geholfen. Sollten noch Fragen bestehen, schreibt einfach einen Kommentar!