В настоящее время я пытаюсь получить результаты из контроллера api и добавить данные json в таблицу в моем режиме бритвы. У меня возникли проблемы с массивом, который я использовал, чтобы заполнить таблицу, не заполненную данными, до того, как была создана таблица. Я попытался освободить эту проблему с обратными вызовами, но я все еще неопытен и не понимаю понимания из учебников.JavaScript-обратные вызовы для нескольких функций
Вот функция JavaScript У меня есть (и в порядке, они должны идти 1. $ .getJSON 2. функцию fillArray 3. AddToTable функция):
$(document).ready(function()
{
$.getJSON('api/GetRestaurants/detroit').done(fillArray(data))
});
function fillArray(data, callback)
{
var restaurant =
{
Name: "",
PhoneNumber: "",
PlaceID: "",
Rating: 0,
Website: ""
};
var dataArray = new Array();
for (var k = 0; k < data.length; k++) {
restaurant.Name = data[k].Name;
restaurant.PhoneNumber = data[k].PhoneNumber;
restaurant.PlaceID = data[k].PlaceID;
restaurant.Rating = data[k].Rating;
dataArray.push(restaurant);
}
callback(AddToTable(dataArray));
}
function AddToTable(dataArray) {
document.getElementById("tbl").innerHTML =
'<tr>' +
'<th>Restaurant Name</th>' +
'<th>Restaurant PlaceID</th>'
for (var i = 0; i < dataArray.length; i++) {
+'<tr>'
+ '<td>' + dataArray[i].Name + '</td>'
+ '<td>' + dataArray[i].PlaceID + '</td>'
+ '</tr>';
}
}
Данные есть, и вызов контроллера api успешно, мне просто нужны данные для заполнения массива, прежде чем таблица использует этот массив.
Я ценю любую помощь и/или комментарии, спасибо, ребята:].
@TravisKean - Мне интересно, если вы нашли какой-либо из моих ответов полезными или у вас есть какие-либо последующие вопросы. Если ответ решает вашу проблему, вы должны проверить галочку рядом с ним. –