ResultData ist eine Liste von CommandModel-Objekten.Ajax-Erfolgsaufruf gibt Json-Liste von Objekten zurück - kann nicht auf Eigenschaften zugreifen
[ { "Command": "Blueprint", "Count": 77 }, { "Command": "Template", "Count": 188 }, { "Command": "Test", "Count": 78 } ]
Das Objekt, das es sieht so aus, zurückgegeben wird
public class CommandModel
{
public string Command {get; set;}
public int Count {get; set;}
}
Ich versuche, die Objekte auf Daten zuzugreifen, die Punkteigenschaft Notation, wie in diesem Video (https://www.youtube.com/watch?v=7oUZXuI7OgQ).
$("#btn").click(function() {
$.ajax({
url: "http://localhost:6023/external",
type: "GET",
accept: "application/json",
dataType: 'json',
success: function (resultData) {
$.each(resultData, function (key, value) {
var command = value.command; // returns undefined
var count = value.count; // returns undefined
$("tbl").append("<tr><td>" + command + "</td><td>" + count + "</td></tr>")
})
},
error: function (e) {
alert("something broke");
}
})
Zur Laufzeit der ersten Iteration, sehen die Variablen wie folgt aus:
Key = 0
Value = Object {Command:"Blueprint", Count:77}
nicht sicher, was ich hier fehlt.
Javascript ist Groß-und Kleinschreibung. Versuchen Sie 'var command = value.Command;' usw. –
@KelvinSherlock Doh, das war es. Daten werden jetzt korrekt abgerufen, aber nicht korrekt in der Tabelle gespeichert. Wenn es nicht eine Sache ist, ist es eine andere :) Bitte zögern Sie nicht, als Antwort einzureichen, und ich werde glücklich akzeptieren. –