function callLink(imageId) {
$.getJSON('/GetData/GetImage?idImage=' + imageId, function (data) {
console.info(data);
});
}
Результат JSON, когда я запускаю приведенный выше код,
[
{
FileName:"10012816.jpeg" ID:2591 TicketID:"10012816"
},
{
FileName:"1562754508233.jpeg" ID:2591 TicketID:"10012816"
}
]
Как я могу получить результат из JSON выше и поместить его в html-код. Так
@foreach (var item in data) {
//html code
<h6 class = "mb-3">@item.FileName</h6>
...
<span class = "badge badge-success r-30"><i class = "icon-check mr-2"></i>@item.ID</span>
}
Я предлагаю вам узнать о DOM и функциях JavaScript, которые позволяют вам манипулировать им.
@PatrickHund Только в браузере. Я использую MVC с HML и JS.
Вы уверены? @foreach и @item выглядят как .net/ASP/Razor
var json = JSON.parse(данные); json[0].ИмяФайла json[1].ИмяФайла



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы уже предоставили псевдокод,
function callLink(imageId) {
// as you are using `.getJSON` it's already formatted and you don't need `JSON.parse()`
$.getJSON('/GetData/GetImage?idImage=' + imageId, function (data) {
let output = '';
for(let i = 0; i < data.length; i++) {
output += `<h6 class = "mb-3">${data[i].fileName}</h6>`;
output + = `..`;
output + = `<span class = "badge badge-success r-30"><i class = "icon-check mr-2"></i>${data[i].ID}</span>`
}
// or some more useful code, like $(selector).html(output);
alert(output);
});
}
Создайте какой-нибудь html div
<div id = "images-info"></div>
Добавить запрошенные данные в div
function callLink(imageId) {
$.getJSON('/GetData/GetImage?idImage=' + imageId, function (data) {
for (var i = 0; i < data.length; i++) {
$('#images-info').append('<div><h6 class = "mb-3">'+ data[i].FileName +'</h6><span class = "badge badge-success r-30"><i class = "icon-check mr-2"></i>'+ data[i].ID +'</span></div>');
}
});
}
Изменения DOM стоят дорого. Лучше объединить в памяти, а затем добавить окончательный результат в DOM.
Какой язык шаблонов вы используете? Шаблоны отображаются в бэкэнде (на сервере) или в браузере?