修改EasyUI中DateBox和DateTimeBox的格式最近整理Easyui控件的时候,对Easyui的DateBox控件和DateTimeBox控件进⾏了梳理,⽽我之所以将EasyUI的DateBox控件和DateTimeBox控件放在⼀起,归为⼀类,是因为这两个控件没有什么区别,如果你⾮得说这两个控件有区别,也⽆⾮是DateTimeBox控件后⾯除了基本的年⽉⽇之外带上了⼩时或者分钟或者秒什么的,更何况,这两个控件在进⾏⽇期格式化时所采⽤的⽅法也是⼀样的。
DateBox介绍:
Demo实例参看:
属性⽅法介绍参看:
控件的默认格式:
DateBox控件默认的⽇期格式是:                          DateTimeBox控件默认⽇期格式是:
这种显⽰的格式都是:mm/dd/yyyy,对于我们中国⼈来说,并不适合我们的习惯,同时,他们夹带了“Today”、“Ok”、“Close”等字样,如果就这么给⽤户使⽤,虽然说当前这个社会,我们需要⾯向国际,但软件的使⽤者还是我们⾃⼰中国客户,所以说问题就来了~~~~~
问题⼀:英⽂改中⽂
解决⽅法:引⼊easyui-lang-zh_CN.js
注意:
第⼀:Easyui引⽤js时,要先引⼊jquery.min.js、其次是jquery.easyui.min.js,最后是easyui-lang-zh_CN.js,存在顺序关系。
第⼆:引⼊easyui-lang-zh_CN.js后,相应的提⽰信息也会改变,同时改变了这两个控件的⽇期默认显⽰格式,为:yyyy-mm-dd,效果如下:
问题⼆:⽇期格式改正jquery字符串截取
这两个控件在修改⽇期格式上都可以采⽤以下两种⽅法,我现在已以DateTimeBox为例,说明他们是如何实现的。
⽅法⼀:split函数+正则表达式
显⽰效果如下:
⽅法⼆:substring函数
显⽰效果如下:
注意:
⽅法⼆不适合将⽇期格式改为类似于yyyy-m-d h-m-s,理由:Substring函数是截取字符串,⽽在yyyy-m-d hh-mm-ss这种⽇期格式中m、d、h、m、s可能会存在⼀位数和⼆位数,整个⽇期的长度不固定,因此在截取的时候,选取的字符位置不能固定。
总结
这两种⽅法的本质⼀样,不管是哪种解决⽅式,它的原理都是不变的,主要是借⽤Formatter和Parser
函数,其中Formatter函数使得选择⽇期后将其格式化为我们需要的格式,Parser是分析字符串的函数,这个函以’date’为参数并返回⼀个⽇期。问题来了,不光是要知道它们的解决⽅式,还要知道它们是怎么产⽣的,应该怎么从根本上解决这个问题,这些解
决⽅式背后的本质是什么。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。