easyui使用日期框,不能后台接收数据返回400错误

本文探讨了使用EasyUI框架时遇到的问题:通过$(#addDialogform).serialize()发送AJAX请求导致日期类型转换失败。文章分析了easyui-datebox与easyui-datetimebox的区别,并给出了具体的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、背景

使用easyui框架写from表单时,发送ajax请求,data等于$("#addDialog form").serialize(),提交后结果为400

浏览器控制台信息:

Failed to convert property value of type 'java.lang.String' to required type 、'java.util.Date' for property 
'followOrderStudentVo.followTime';nested exception is org.springframework.core.convert.
ConversionFailedException: Failed to convert from type [java.lang.String] to type [java.util.Date] for value '2018-09-13'; 
nested exception is java.lang.IllegalArgumentException: Parse attempt failed for value [2018-09-13]",
"objectName":"followStudentDto","field":"followOrderStudentVo.followTime",
"rejectedValue":"2018-09-13","bindingFailure":true,"code":"typeMismatch"}],
"message":"Validation failed for object='followStudentDto'. 

二、原因

$(from).serialize()方法将原本的时间框中的Date类型的数据序列化为String类型,后台在自动装配时setter方法的类型不匹配

这里要说下easyui:easyui-dateboxeasyui-datetimebox的区别了

easyui-datebox会转为String

easyui-datetimebox会转为Date

三、解决办法

将前端页面中时间框input的class属性easyui-datebox换为easyui-datetimebox就行了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值