layui数据表格 table.render 报错的解决方法


Posted in Javascript onSeptember 29, 2019

一、报错信息

Whitelabel Error Page
This application has no explicit mapping for /error, so you are seeing this as a fallback.

Wed Jan 23 15:20:18 CST 2019
There was an unexpected error (type=Internal Server Error, status=500).
An error happened during template parsing (template: "class path resource [templates/Page/test/test.html]")
org.thymeleaf.exceptions.TemplateInputException: An error happened during template parsing (template: "class path resource [templates/Page/test/test.html]")
	at org.thymeleaf.templateparser.markup.AbstractMarkupTemplateParser.parse(AbstractMarkupTemplateParser.java:241)
	at org.thymeleaf.templateparser.markup.AbstractMarkupTemplateParser.parseStandalone(AbstractMarkupTemplateParser.java:100)
org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:93)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:748)
Caused by: org.attoparser.ParseException: Could not parse as expression: "
     {field: 'code', width: 80, title: 'ID', sort: true},
     {field: 'name', width: 100, title: '用户名'},
     {field: 'age', width: 80, title: '年龄'},
     {field: 'gender', width: 80, title: '性别'},
     {field: 'create_time', width: 80, title: '创建时间'},
     {field: 'update_time', width: 80, title: '修改时间'},

    " (template: "Page/test/test" - line 57, col 25)
	at org.attoparser.MarkupParser.parseDocument(MarkupParser.java:393)
	at org.attoparser.MarkupParser.parse(MarkupParser.java:257)
	at org.thymeleaf.templateparser.markup.AbstractMarkupTemplateParser.parse(AbstractMarkupTemplateParser.java:230)
	... 64 more
Caused by: org.thymeleaf.exceptions.TemplateProcessingException: Could not parse as expression: "
     {field: 'code', width: 80, title: 'ID', sort: true},
     {field: 'name', width: 100, title: '用户名'},
     {field: 'age', width: 80, title: '年龄'},
     {field: 'gender', width: 80, title: '性别'},
     {field: 'create_time', width: 80, title: '创建时间'},
     {field: 'update_time', width: 80, title: '修改时间'},

    " (template: "Page/test/test" - line 57, col 25)
	at org.thymeleaf.standard.expression.StandardExpressionParser.parseExpression(StandardExpressionParser.java:131)

二、问题处理

layui数据表格 table.render 报错的解决方法

根据官网给出的代码,我们会发现 cols: 属性后面的参数“[[ ]] ” ,前后两个中括号是连在一起的。使用的时候必须把它们分开,不然就会报错,最好的选择就是换行,比如像下面这样

layui数据表格 table.render 报错的解决方法

到这里我们发现,像这一类的错误相对于layui这样商业化的框架来说也算是属于比较”低级“的了。但为什么官方迟迟还不修复这个BUG呢,原因很简单 因为它和 thymeleaf 冲突。

当你的项目采用的是 thymeleaf模板引擎 作为前端数据铺显的时候,你会发现想要在js 中获取后端传入的参数 必须以这样的方式取值

layui数据表格 table.render 报错的解决方法

key必须放在 [[ … ]] 中否则无法获取值,这种语法的语句称为“内联”。而这个时候layui 网格加载数据的属性 cols: [[ … ]] 恰好用的也是[[…],所以thymeleaf会把它当做后端的传入的参数来进行解析,自然就报错了。

layui数据表格 table.render 报错的解决方法

解决办法非常简单,在 script 标签中加入属性 th:inline=“none”,指定该标签内的js 不使用”内联“获取参数。

layui数据表格 table.render 报错的解决方法

如果你需要在js 中获取后端传入的参数,把th:inline="none"改成th:inline="javascript"就可以获取了

layui数据表格 table.render 报错的解决方法

如果这个时候页面不报错,却没有数据。可能是返回的数据格式不正确,必须严格按照官方给出的数据格式来封装

1、table 组件默认规定的数据格式为:

{
"code": 0,
"msg": "",
"count": 1000,
"data": [{}, {}]
}

参考数据

{
"code": 0,
"msg": "",
"count": 1000,
"data": [
{
"id": 10000,
"username": "user-0",
"sex": "女",
"city": "城市-0",
"sign": "签名-0",
"experience": 255,
"logins": 24,
"wealth": 82830700,
"classify": "作家",
"score": 57
}
]
}

2、自定义返回数据格式,想重新规定返回的数据格式,那么可以借助 response 参数,如:

table.render({
elem: '#demp'
,url: ''
,response: {
statusName: 'status' //规定数据状态的字段名称,默认:code
,statusCode: 200 //规定成功的状态码,默认:0
,msgName: 'hint' //规定状态信息的字段名称,默认:msg
,countName: 'total' //规定数据总数的字段名称,默认:count
,dataName: 'rows' //规定数据列表的字段名称,默认:data
} 
//,…… //其他参数
});

那么上面所规定的格式为:

{
"status": 200,
"hint": "",
"total": 1000,
"rows": []
}

以上这篇layui数据表格 table.render 报错的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
在IE和VB中支持png图片透明效果的实现方法(vb源码打包)
Apr 01 Javascript
超级有用的13个基于jQuery的内容滚动插件和教程
Jul 31 Javascript
js日历功能对象
Jan 12 Javascript
Jquery 动态生成表格示例代码
Dec 24 Javascript
js常用数组操作方法简明总结
Jun 20 Javascript
js数组依据下标删除元素
Apr 14 Javascript
javascript实现图片轮播效果
Jan 20 Javascript
使用getBoundingClientRect方法实现简洁的sticky组件的方法
Mar 22 Javascript
C#微信小程序服务端获取用户解密信息实例代码
Mar 10 Javascript
JavaScript实现百度搜索框效果
Mar 26 Javascript
jQuery实现动态添加和删除input框实例代码
Mar 26 jQuery
JS数组方法shift()、unshift()用法实例分析
Jan 18 Javascript
JavaScript实现秒杀时钟倒计时
Sep 29 #Javascript
在layui中对table中的数据进行判断(0、1)转换为提示信息的方法
Sep 28 #Javascript
layui+jquery支持IE8的表格分页方法
Sep 28 #jQuery
JavaScript获取页面元素的常用方法详解
Sep 28 #Javascript
解决Layui数据表格的宽高问题
Sep 28 #Javascript
解决layui-table单元格设置为百分比在ie8下不能自适应的问题
Sep 28 #Javascript
layui table 列宽百分比显示的实现方法
Sep 28 #Javascript
You might like
php下判断数组中是否存在相同的值array_unique
2008/03/25 PHP
Laravel框架集合用法实例浅析
2020/05/14 PHP
利用JQuery+EasyDrag 实现弹出可拖动的Div,同时向Div传值,然后返回Div选中的值
2009/10/24 Javascript
IE和Firefox下event事件杂谈
2009/12/18 Javascript
Jquery + Ajax调用webService实例代码(asp.net)
2010/08/27 Javascript
JavaScript 选中文字并响应获取的实现代码
2011/08/28 Javascript
js中文逗号转英文实现
2014/02/11 Javascript
如何解决ligerUI布局时Center中的Tab高度大小
2015/11/24 Javascript
js和jquery实现监听键盘事件示例代码
2020/06/24 Javascript
JavaScript中eval函数的问题
2016/01/31 Javascript
Javascript实现页面滚动时导航智能定位
2017/05/06 Javascript
jQuery实现右侧抽屉式在线客服功能
2017/12/25 jQuery
VSCode配置react开发环境的步骤
2017/12/27 Javascript
LayUi中接口传数据成功,表格不显示数据的解决方法
2018/08/19 Javascript
详解vue-cli下ESlint 配置说明
2018/09/03 Javascript
vue多级复杂列表展开/折叠及全选/分组全选实现
2018/11/05 Javascript
基于Vue的商品主图放大镜方案详解
2019/09/19 Javascript
[52:02]DOTA2-DPC中国联赛 正赛 Phoenix vs Dragon BO3 第二场 2月26日
2021/03/11 DOTA
json跨域调用python的方法详解
2017/01/11 Python
Python基于whois模块简单识别网站域名及所有者的方法
2018/04/23 Python
python2.x实现人民币转大写人民币
2018/06/20 Python
python @classmethod 的使用场合详解
2019/08/23 Python
python实现两个一维列表合并成一个二维列表
2019/12/02 Python
tensorflow 实现自定义梯度反向传播代码
2020/02/10 Python
Python如何实现后端自定义认证并实现多条件登陆
2020/06/22 Python
美国优质宠物用品购买网站:Muttropolis
2020/02/17 全球购物
捐书寄语赠言
2014/01/18 职场文书
高中军训感言600字
2014/03/11 职场文书
小学庆六一活动总结
2014/08/28 职场文书
横店影视城导游词
2015/02/06 职场文书
学生乘坐校车安全责任书
2015/05/11 职场文书
家长意见和建议怎么写
2015/06/04 职场文书
光荣之路观后感
2015/06/12 职场文书
遗嘱范文
2015/08/07 职场文书
python 中的@运算符使用
2021/05/26 Python
详解 TypeScript 枚举类型
2021/11/02 Javascript