Ich schreibe meine erste Ajax-Anfrage, auf einer Groovy/Grails-Plattform. HierRetrieve POST JSON Antwort
var newDataB = $.ajax({
method:'post',
url: url,
async: false,
data: {source:"${source}"},
success: function (response) {
jsonData = response;
var res = JSON.parse(jsonData);
alert(res);//
}
});
ist die Antwort meines Controller "url"
def result = [ value: 'ok' ]
render result as JSON
Aber es funktioniert nicht und ich erhalte eine Fehlermeldung in meinem Browser
SyntaxError: JSON.parse: unexpected character at line 1 column 2 of the JSON data
var res = JSON.parse(jsonData);
Ich verstehe nicht, scheint die Antwort ein nettes formatiertes JSON zu sein?
EDIT habe ich einen Druck wie Paul schlägt vor:
Wenn i
var newDataB = $.ajax({
method:'post',
url: url,
async: false,
dataType: 'json',
data: {source:"${source}"},
success: function (response) {
console.log(response)
console.log(response.value)
jsonData = response;
}
});
Der erste Druck auszuführen ist:
Objekt {value = "ok"}
Der zweite Druck ist
ok
Wenn ich das Ergebnis erhalten will, wie ist der richtige Weg?
Muss ich den Wert in der Anweisung zuweisen "Erfolg: function (Antwort) {"
tun für mich so etwas wie
var result
var newDataB = $.ajax({
method:'post',
url: url,
async: false,
dataType: 'json',
data: {source:"${source}"},
success: function (response) {
result = response.value
}
});
console.log("result : "+result);
Dieser Code funktioniert !!
Oder vielleicht gibt es einen Weg, um das Ergebnis zu erhalten, etwas zu tun, wie
var newDataB = $.ajax({
method:'post',
url: url,
async: false,
dataType: 'json',
data: {source:"${source}"},
success: function (response) {
}
});
var result = newDataB.response.somethingblablabla
oder
var result = OneFunction(newDataB.response)
??????
sind Sie sicher, dass Sie es analysieren müssen? was ist, wenn Sie 'console.log (Antwort)' –
Vielen Dank für Ihre Antwort, – julienasefth