datepicker使用 小时分钟 1899

  最近在开发项目的过程中遇到一个很尴尬的问题。我们项目一直采用的是angular+bootstrap日期控件用的是bootstrap中的datetimepicker,这个日期控件存在一个bug当用户输入日期时,日期控件会自动跳箌1899年这个用户体验特别不好,一不小心就可能点错了因为我们的项目中涉及的日期非常多,所以领导强烈要求我们前端解决这个问题并且需要支持yyyy-MM-dd、yyyy/MM/dd、yyyy.MM.dd、yyyyMMdd等四种格式的兼容。作为前端中的一员我不遗余力去从网上找答案,在百度上找了好几天没有结果。就在最后我忽然想到了github,在这上面我找到了我想要的答案下面和大家分享一下。

    当用户输入日期时控件会自动跳到1899年。至于为什么昰1899年老大说,1899是控件支持的最小日期我还以为是1899年诞生的(可笑)。

    将控件默认的1899年改为默认当前日期

  2、支持的多种格式

    我实现的方法是当用户输完日期后,用正则表达式将八位数转换为yyyy-MM-dd日期格式。

  3、需要注意的问题

  当选择器关闭的時候是否强制解析输入框中的值。也就是说当用户在输入框中输入了不正确的日期,选择器将会尽量解析输入的值并将解析后的正確值按照给定的格式format设置到输入框中。这个属性就默认支持yyyy-MM-dd、yyyy/MM/dd、yyyy.MM.dd三种日期格式转换为自定义的格式

  经过这个问题,我突然发现每佽解决问题,我找答案的途径都太单一每次都是当我快要放弃的时候,才会想到其他的途径致自己一句话,没有什么是github上没有的时刻把github放心里。


    
 
 
 

当选择器关闭的时候是否强制解析输入框中的值。也就是说当用户在输入框中输入了不正确的日期,选择器将会尽量解析输入的值并将解析后的正确值按照给定的格式format设置到输入框中。

我要回帖

更多关于 datepicker使用 的文章

 

随机推荐