最初的代码写的是yyyy-MM-dd hh:mm:ss ,后面发现选择器上面一旦选择超过12点的,又会从1开始算,也就是12小时制。
查了很久都没有什么好办法可以解决12小时转化成24小时,有找到一两篇是利用js转化,但是很复杂。
查看文档,感觉写法跟文档没有多大区别。
经过n久的琢磨。最后尝试将HH修改成hh 也就是 yyyy-MM-dd HH:mm:ss,成功可以选择到13 14点,而不是1 2点了!
二、时间格式这边要提到两个参数
①:format :这一个是选择时间后,在选择器方框内显示的格式
②:value-format:这是选择后,最后的数据格式,传给后端也是这种格式。
有了以上第二个参数 就可以将以下 第一种中国标准时间格式转化成第二种类型的时间格式。
Wed Oct 24 2021 20:00:00 GMT+0800 (中国标准时间)
2021-10-24 20:00:00
ps:如果已经使用value-format,后面我们又对获取到的时间进行了一些 *** 作,导致时间又恢复成了中国标准时间的形式,那么,我们可以使用以下的代码进行转化
let date=query; //query是已经获取的时间,将其赋值给data
//对中国标准时间进行截取
let y= Number(date.slice(0,4)) ; //年份是前四个数字,以下的以此类推
let m=Number(date.slice(5,7));
let d=Number(date.slice(8,10));
let h=Number(date.slice(11,13));
let f=Number(date.slice(14,16));
//将截取到的年月日进行赋值,给day2
var day2=new Date(y,m-1,d,h,f);
//将时间格式进行转化
var Time2 = day2.getFullYear() + '-' + (day2.getMonth() + 1)
+ '-' + day2.getDate() + ' ' + day2.getHours() + ':' +
day2.getMinutes() + ':' + day2.getSeconds();
三:注意空格
确定时间格式什么都没有问题,但是后端接收到的数据却是空的,研究了很久才知道在dd与HH之间多了一个空格,这个就比较坑了。
// dd与 HH 之间只有一个空格,没有多加一个空格的
value-formate="yyyy-MM-dd HH:mm:ss"
//多加一个空格
value-formate="yyyy-MM-dd HH:mm:ss"
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)