关于DataTables使用Ajax异步获取数据无法显示的问题

在使用DataTables出现无法获取到数据填充到表格 DataTables版本1.10.24

后端传回的数据如下:

js代码片段如下:

"serverSide": true,
                    "processing": true,
                    <%--"ajax": '${pageContext.request.contextPath}/user/userlist',--%> //
                    "fnServerData": function (sSource, aoData, fnCallback, oSettings) {
                        oSettings.jqXHR = $.ajax({
                            "dataType": 'json',
                            "type": "GET",
                            "url": '${pageContext.request.contextPath}/user/userlist',
                            "data": aoData,
                            "success": function(data){
                                fnCallback (data)
                            }
                        });
                    },
                    "fnDrawCallback": function (oSettings) {
                        var json = jQuery.parseJSON(oSettings.jqXHR.responseText);//对获取到的相应数据进行解析处理
                        $("#sumEarn").html(json.sums);
                    },
                    "columns": [
                        {"data": "bName"},
                        {"data": "bIntro"},
                        {"data": "author"},
                        {"data": "time"},
                        {"data": "words"},
                    ],

前端页面显示:

只能显示出页码信息和数据总量,翻页时ajax可以正常提交

于是我修改了后端传回数据的格式,如下:

此时前端页面数据正常显示,如下:

但是由于没有了页脚的信息(没传回来当然没有了),求一个解决方案,

fnCallback函数名称在哪里?是不是应该fnDrawCallback这个函数名称呢?

如果这条信息能帮到你,请点击采纳

已经得到服务端的数据响应,从这个角度说,与ajax就无关。

至于你说的“数据无法显示”,问题出在得到数据之后是否数据绑定,建议你看一下,本地js。推荐你先讲数据写死,看是否OK

有问题,说明本地读取dataset有错

不懂,说

提示你,亦有可能是数据响应速度问题

应该是数据没解析到,draw的数据可以显示但是data的数据就显示不出来,

如果单传data数据又可以显示

您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

 

fnCallback (data) =》应该是fnCallback (data.data)  试试呢。

非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!

速戳参与调研>>>https://t.csdnimg.cn/Kf0y