我正在处理数据表,当加载新数据时,某些列值会丢失并且现有值不会被覆盖。
Json返回:
{Site_Name: "ABC1", Site_Status: 1, Update_On: "12:15:57", Shutdown_Code: "1", Shutdown_Reason: "Reason 1"}
{Site_Name: "ABC2", Site_Status: 1, Update_On: "12:15:58", Shutdown_Code: "4", Shutdown_Reason: "Reason 2"}
{Site_Name: "ABC3", Site_Status: 1, Update_On: "12:15:59", Shutdown_Code: "2", Shutdown_Reason: "Reason 3"}
{Site_Name: "ABC4", Site_Status: 1, Update_On: "12:16:00", Shutdown_Code: "6", Shutdown_Reason: "Reason 4"}
功能
:function RefreshTable(tableId, urlData) {
$.ajax({
type: 'POST',
url: window.location.pathname + "/RefreshTimer",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (json) {
table = $(tableId).dataTable();
oSettings = table.fnSettings();
start = Date.now();
table.fnClearTable(this);
for (var i = 0; i < json.Table.length; i++) {
table.oApi._fnAddData(oSettings, json.Table[i]);
//to change value to Dot (not overriding)
if (json.Table[i].Site_Status === true || json.Table[i].Site_Status === "1") {
json.Table[i].Site_Status = '<span class="redDot"></span>';
isShutdown = true;
} else {
json.Table[i].Site_Status='<span class="greenDot"></span>';
}
oSettings.aiDisplay = oSettings.aiDisplayMaster.slice();
table.fnDraw();
}
clearInterval(interval);
interval = setInterval("getData()", 120000);
startTimer(fiveMinutes, display, true);
}
});
}
输出