Wie kann ich das Jquery Ajax Object auslesen?

Chrome Developer Tool geschlossen - (JavaScript, JQuery, AJAX) Chrome Developer Tool offen - (JavaScript, JQuery, AJAX)

1 Antwort

Wieso versuchst du das erst einer Variablen zuzuweisen?

Also ich verarbeite die "Antwort" eines solchen Requests immer so ungefähr:

$.ajax({
type: 'POST',
url: '/ajax.php',
data: {'foo':'bar', 'bla':'blubb'},
complete: function(data){ console.log(data);
}
});

In der Console sollte dann zu sehen sein, welche Daten zurückgeliefert wurden und du solltest dann z.B. via "data.status" darauf zugreifen können. (Je nachdem in welcher Form die Daten ausgegeben werden, ich benutze da in der Regel JSON, ist imho am komfortabelsten).

Oder, wie ich finde noch etwas einfacher, direkt mit $.get / $.post, z.B.:

$.post('/ajax.php', { foo: 'bar', bla: 'blubb' })  .done(function(data) {    console.log(data);  });

JuniorD 
Fragesteller
 20.12.2016, 21:22

Das Problem ist, dass der Ajax Aufruf in einer Funktion ist. Diese muss true oder false zurück geben. Aber aus der Ajax Funktion kann ich keine werte zurück geben. Darum der Versuch, das Ergebnis in einer variablen zu speichern um dann weitere Anfragen damit zu machen.

0
mastema666  20.12.2016, 21:36
@JuniorD

Vielleicht so:

var ergebnis;


$.ajax({
async: false,
type: 'POST',
url: '/ajax.php',
data: {'foo':'bar', 'bla':'blubb'},
complete: function(data){
ergebnis = data;
}
});

Wenn ich mich nicht irre müsste nachher dann die Rückgabe des Requests in ergebnis stehen. (Wichtig ist dabei das "async: false", ansonsten "macht das Script weiter" bevor das Ergebnis da ist)

1