【发布时间】:2015-08-30 10:30:29
【问题描述】:
所以我正在尝试使用 datatables 插件实现一个分页表,这是我第一次使用这个插件。我按照插件文档中的文档进行操作,并尝试通过使用 Ajax 从服务器获取值,如插件文档中所述。
一旦我提出 get 请求,我似乎收到以下错误,但我不确定为什么?
错误:未捕获的类型错误:无法读取未定义的属性“长度”
在客户端我有以下代码
viewReports = {
init: function(){
$('#paginatedData').DataTable({
"processing": true,
"serverSide": true,
"ajax": '/viewreports'
});
}
};
$(document).ready(viewReports.init);
在我的服务器端,我有以下内容
router.get('/viewreports', function(res, req){
async.parallel({
viewReports: function(callback){
restCall('/rest/bugbounty/latest/message/searchReport', 'POST', parameters, function(data){
callback(null, data);
});
}
}, function(err, result){
if(!err){
res.send(result.viewReports);
res.render('viewreports');
}
});
});
返回的 JSON:
{ reportList: [ { reportID: 'EIBBP-448', eBayUserID: ' ', reportStatus: 'New', summary: 'BugBounty Report created by Raj', lastUpdatedDate: '2015-06-15 01:05', createdDate: '2015-06-15 01:05', paypalLoginID: 'raaj@paypal.com' } ], searchStatus: 'Success', eBayUserID: '', errorCode: '0', rowCount: '6', pageNumber: '1', paginationValue: '1', paypalLoginID: 'raaj@paypal.com' }
很高兴知道是否有人使用 node.js 服务器端处理数据表
【问题讨论】:
-
在服务器端处理模式下,您的服务器端代码应返回 JSON 格式的数据,如 here 所述。请发布您的服务器返回的 JSON 文件。
-
所以我没有将我的 json 数据保存到的特定文件,但是在呈现路由“/viewreports”时,我能够在控制台上看到以下值 { reportList: [ { reportID: 'EIBBP-448',eBayUserID:'',reportStatus:'New',摘要:'Raj 创建的 BugBounty 报告',lastUpdatedDate:'2015-06-15 01:05',createdDate:'2015-06-15 01: 05', paypalLoginID: 'raaj@paypal.com' } ], searchStatus: 'Success', eBayUserID: '', errorCode: '0', rowCount: '6', pageNumber: '1', paginationValue: '1', paypalLoginID: 'raaj@paypal.com' }
-
是否需要对上面的json值进行字符串化?
-
您的回复对于服务器端处理模式不正确,请阅读Server-side processing了解更多详细信息和数据格式。是的,您需要以 JSON 格式返回字符串。
标签: javascript jquery node.js datatables jquery-datatables