我目前正在尝试从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 - 我很好奇,如果你发现我的答案有用,或者如果你有任何后续问题。如果答案解决了您的问题,您应该检查旁边的复选标记。 –