我正在想办法解决 Input type=date 问题。我知道输入显示在浏览器中有所不同,以澄清我为此使用谷歌浏览器的事情。所以我的简单表格是这样的:<input type="date" name="startingdate" class="form-control" id="startingdate"/>我的控制器是这样的:public ModelAndView getDate(@FormParam("startingdate") String startingdate) { System.out.println(startingdate);}chrome 中显示的格式mm/dd/yyyy正是我想要的格式,但是当我以字符串格式从 html 获取值到我的控制器时,它突然变成了yyyy-mm-dd.作为一个例子,当我输入时09/11/2018,它变成2018-11-09了控制器,并在将它传递到我的数据库时变成0011-08-18. 在我的控制器获取日期值之前,有没有其他方法可以修复格式,而无需更改数据库上的日期格式或使用 simpledateformat 进行解析?我的印象是这只是格式的错误,但如果我完全错过了什么,我愿意接受建议。谢谢!更新:实际问题出在起始日期的后端解析上,它完全在我的眼皮底下。使用以下方法修复了问题:SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); java.util.Date startingdateparsed = format.parse(startdate); java.sql.Date startdatingparse = new java.sql.Date(startingdateparsed.getTime());感谢您的时间和见解!
添加回答
举报
0/150
提交
取消