Ork vom Mork: Ajax-Request

Beitrag lesen

$.ajax (

dataType: "json",

error: function (req, status, error)
                                                       {
                                                        alert("error");
                                                       }
                                       }

Mein PHP-Script wird aufgerufen. Soviel ist sicher. Die beiden Parameter 'success' und 'error' verstehe ich, glaube ich, allerdings nicht ganz richtig. Was löst 'success' aus und was 'error'?

Grundsätzlich hast du anscheinend schonmal den Fehler begangen, dass, was die Funktionen dir liefern, nicht zu beachten.

» error(XMLHttpRequest, textStatus, errorThrown)
»
» A function to be called if the request fails. The function is passed
» three arguments: The XMLHttpRequest object, a string describing the type
» of error that occurred and an optional exception object, if one occurred.
» Possible values for the second argument (besides null) are "timeout",
»  "error", "notmodified" and "parsererror".

Speziell das Argument textStatus hätte dir vermutlich schon etwas weitergeholfen.

Ich lasse mein PHP-Skript am Ende etwas ausgeben:

echo true; -> success
echo false; -> success
echo 1; -> success
echo 0; -> success
echo "quatsch"; -> error

Wie ist das zu deuten?

So, wie es in der Anleitung steht:

» dataType:

»   "json": Evaluates the response as JSON and returns a JavaScript object.
»   In jQuery 1.4 the JSON data is parsed in a strict manner; any malformed
»   JSON is rejected and a parse error is thrown.

Beachte den Nebensatz am Ende. "quatsch" ist mit Sicherheit kein gültiges JSON-Format – womit ich dann wieder beim textStatus-Argument der error-Funktion bin, dort wird dann sicherlich, wie in der Anleitung angekündigt, "parseerror" stehen.

http://api.jquery.com/jQuery.ajax/