关于表格重载设定url异步接口的问题

提问 已结 10 216
elfin
elfin 2019-11-6
悬赏:20飞吻
版本:layui 2.5.5 浏览器:Chrome
想做一个表格搜索的功能,在tableIns.reload()中设置了url但是无效。
var tableIns = table.render({
elem: '#storage-list'
,url: '<%=request.getContextPath()%>/getRecordList' //默认带参数: ?page=int&limit=int
,toolbar: '#records-toolbar'
,defaultToolBar: ['filter', 'print' , {
title: '导出'
,layEvent: 'LAYTABLE_EXPORT_ALL'
,icon: 'layui-icon-export'
}]
,page: true
,title: '出入库记录表'
,cols: [[ //json格式参考
{type: 'checkbox', fixed: 'left'}
,{field: 'number', title: '快递单号', sort: true, width: 160}
,{field: 'deliveryStatus', title: '快递收件(揽件)', sort: true, width: 140}
,{field: 'isSign', title: '是否签收', sort: true, width: 105}
,{field: 'updateTime', title: '最后一次更新时间', sort: true, width: 160}
,{field: 'takeTime', title: '目前耗时', sort: true, width: 118}
,{field: 'storageStatus', title: '出入库状态', sort: true, width: 120}
,{field: 'join_realName', title: '入库执行人', sort: true, width: 120}
,{field: 'out_realName', title: '出库执行人', sort: true, width: 118}
,{fixed: 'right', title:'操作', toolbar: '#in-row-bar', width: 115}
]]
,limit: 15
,totalRow: true
});
tableIns.reload({
url: '<%=request.getContextPath()%>/findRecords' // 返回搜索结果的接口
,page: {curr: 1}
,where: {
updateTime: params['lastUpdate']
,username: params['username']
}
,parseData : function (res) {
return {
"code": res.code
,"msg": res.msg
,"data": res.data.content
,"count": res.count
}
}
});

渲染表格没问题,重载没有反应。

POSTMAN可以访问接口,也有数据返回。
回帖
  • @elfin 我觉得你这个问题需要一步步的进行排查,首先前台打开f12看看请求的返回状态,是否进入后台方法了,如果成功看看请求的返回值,parseData可以先注释掉,如果一切都正常再看看数据格式,后台方法的注解等东西有没有问题
    0 回复
  • 试试把parseData去掉。让他自动解析
    0 回复
  • elfin
    2019-11-6
    @·逸仙 还是不行,是tableIns.reload()中不能带url参数吗?前面我有看几个问题帖,不知道是不是和源代码内的extend方式有关
    0 回复
  • 0 回复
  • 光看这个报错信息parsererror指的是前台指定的类型与后台返回的数据类型不匹配,话说你后台返回的数据格式是不是字符串呀,是的话后台ctrl加上@RequestBody
    0 回复
  • elfin
    2019-11-6
    @随风而动170 但是我有开调试,后台有打断点。我用postman请求数据是有击中这个断点的,前台访问接口的时候没有击中断点,我怀疑可能返回为空,无法解析。
    0 回复
  • elfin
    2019-11-6
    @·逸仙 那应该不是我想的那样,多心了
    0 回复
  • elfin
    2019-11-6
    @随风而动170 感谢,解决了。我没有指定请求方法为POST,所以走了后台空的GET方法。是自己粗心了。
    0 回复
  • @elfin 不客气,只是排查问题的方法可以自己总结一下,每次出错先f12看前台请求,然后看后台报错,定位问题才能快速解决问题
    0 回复
  • elfin
    2019-11-6
    @随风而动170 好的,学习了。
    0 回复