[英]Displaying data in jquery Datatable
我需要指導在 jquery 數據表中顯示以下數據。 數據如下圖:
let resultList = [{ Name: “User 1”, ID: 1, Course: “ABC”,
Scores: [
{Englisth: 80;Spanish: 75;Math: 100;History:90},
{Englisth: 81;Spanish: 76;Math: 70;History:80},
{Englisth: 70;Spanish: 55;Math: 80;History:70}
]
}]
resultList 是一個數組,其中包含另一個名為 Scores 的數組。
我想在數據表中顯示上述數據,如下所示,
我查看了rows().add()
和columnDfs
選項,但我不知道如何顯示這些數據。
columns: [
{ title: "Name", defaultContent: "" },
{ title: "ID", defaultContent: "" },
{ title: "Course", defaultContent: "" },
{ title: "English", defaultContent: "" },
{ title: "Spanish", defaultContent: "" },
{ title: "Math", defaultContent: "" },
{ title: "History", defaultContent: "" }
],
columnDefs: [],
select: {
style: 'multi',
selector: 'td:first-child',
className: 'selected bg-selected-row'
},
order: [1, 'asc']
});
非常感謝任何建議。
您在這里遇到的問題是您想在表格中顯示分數,但正在為用戶獲取記錄。 您必須重新格式化數據才能在表格中顯示,如下所示:
//Convert data into required format
var resultListFinal = [];
resultList.map(function(val) {
val.Scores.map(function (score) {
resultListFinal.push({
'Name': val.Name,
'ID': val.ID,
'Course': val.Course,
'English': score.English, //Note: I have corrected the spelling of English
'Spanish': score.Spanish,
'Math': score.Math,
'History': score.History
});
});
});
然后將數據表應用於重新格式化的數組,如下所示:
$('#resultTable').DataTable({
data: resultListFinal, //This is the reformatted array
columns: [{
title: 'Name',
data: 'Name'
}, {
title: 'ID',
data: 'ID'
}, {
title: 'Course',
data: 'Course'
}, {
title: 'English',
data: 'English'
}, {
title: 'Spanish',
data: 'Spanish'
}, {
title: 'Math',
data: 'Math'
}, {
title: 'History',
data: 'History'
}]
});
您可以在 codepen https://codepen.io/prinkpan/pen/jOWbxdm中查看整個解決方案
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.