我正在使用$.ajax();
请求来调用我的控制器。在console.log();
内部,它正确地显示了所有输入的数据,但当我试图通过$('#displayCoins').text(item.oldCoins);
在浏览器上显示它时——如果显示的是最后一段数据,而不是所有数据。
我做错了什么?如何在浏览器上显示所有数据来纠正这一问题?
$.ajax({
type: "GET",
url: '/my/endpoint',
dataType: "html",
success: function (response) {
var resp = response;
var respParsed = $.parseJSON(resp);
$.each(respParsed, function(i, item) {
console.log(item.oldCoins);
$('#displayCoins').text(item.oldCoins);
});
}
});
您遇到的问题是,每次循环时都要替换文本,而不是附加文本。
一种解决方案是将数据附加到数组中,然后通过单个联接将其输出到DOM。
$.ajax({
type: "GET",
url: '/my/endpoint',
dataType: "html",
success: function (response) {
var resp = response;
var respParsed = $.parseJSON(resp);
oldCoins = [];
$.each(respParsed, function(i, item) {
console.log(item.oldCoins);
oldCoins.push(item.oldCoins);
});
$('#displayCoins').text(oldCoins.join("n"));
}
});