javascript - DataTables 将源数组包含在 JSON“数据”属性中
问题描述
我正在尝试使用通过 jQuery ajax GET 请求获得的数据创建一个数据表。GET 请求以格式返回所有对象
[{
"id": "88776",
"employee_name": "JohnhmO",
"employee_salary": "13973",
"employee_age": "19",
"profile_image": ""
},
{
"id": "88778",
"employee_name": "jbmvy",
"employee_salary": "123",
"employee_age": "23",
"profile_image": ""
}]
我需要将源数组包含在 JSON 'data' 属性中,以便数据表可以读取它。
我试过解析成 JSON。我试过unshift。
var dataSet = '';
$.ajax({
url: 'http://dummy.restapiexample.com/api/v1/employees',
type: 'GET',
datatype: 'json'
}).done(function (data) {
console.log(data);
dataSet = data;
})
function unshiftFunc(dataSet) {
dataSet.unshift('data:');
}
console.log(dataSet)
我正在寻找的是这个:
{
"data": [{
"id": "88776",
"employee_name": "JohnhmO",
"employee_salary": "13973",
"employee_age": "19",
"profile_image": ""
},
{
"id": "88778",
"employee_name": "jbmvy",
"employee_salary": "123",
"employee_age": "23",
"profile_image": ""
}]
}
解决方案
您可能意味着将返回的数组放入一个对象中,并以属性 name 为键data
。在这种情况下,只需创建一个对象,并将您的数据分配给data
属性。
.done(function(data){
dataSet = { data: data };
})
顺便说一句,console.log(dataSet)
将返回,undefined
因为$.ajax
是异步的。您必须在done
的回调中执行此操作才能知道dataSet
AJAX 解析后的样子。
推荐阅读
- android - 启动android模拟器后,它的窗口仍然停滞不前
- ruby - 如何通过脚本将变量传递到终端命令行并确保它不包含转义字符串?
- nginx - 为什么我不能在 Kubernetes 上水平扩展一个简单的 HTTP/2 服务?
- office365 - 使用图形访问所有用户一个驱动器文件
- css - woocommerce 的星级评分未在 chrome 上显示
- sql-server - 如何将值附加到新列中的现有值
- ios - 在前台添加 WKWebview,在后台使用 ARKit(ARSession)
- .net - 将大量数据从 AX 拉到移动应用程序
- android - MediaCodec 输出缓冲区在其输入表面镜像到 AR 场景视图表面时不会生成正确的输出
- c++ - Visual Studio 2017 找不到 std::variant