Ext中的DateField字段默认显示格式为'm/d/Y',不太符合中国的使用习惯,以'-'号隔开,或直接显示'xxxx年x月x日'的格式,并且在同一个软件系统中,通常情况会希望日期的显示格式都相同,不要在每个页面中单独设置显示样式。
另外,由于后台传输到前台的格式一般都是java中的Date类型,直接传输到前台会因为Ext中的时区设置问题造成转换错。
基于以上原因,扩展Ext中的DateField字段类型,代码如下所示:
justgin.bap.DateFieldEx = Ext.extend(Ext.form.DateField,{
format:"Y-m-d",
initComponent: function() {
this.hideTrigger = this.readOnly;
justgin.bap.DateFieldEx.superclass.initComponent.call(this);
},
setValue:function(value){
var date = this.formatDate2(value);
justgin.bap.DateFieldEx.superclass.setValue.call(this, date);
},
// private ,ext自己有个formatDate方法,因此这里用formatDate2
formatDate2 : function(date){
//CST时间和UTC时差转换
var dateStr=date.toString();
var position=dateStr.indexOf("UTC");
if(position!=-1){
return Ext.util.Format.date(date, this.format);
}else{
var vdate=new Date(date); //后台默认为格林尼治时间,该方法会默认把后台时间认为是北京时间,北京时间比格林尼治时间多14小时。
//找出当地时间偏移值的毫秒数
var localOffset=vdate.getTimezoneOffset()*60000;
var utcOffset= vdate.getTime() + localOffset;
timezone=utcOffset-6*3600000;//
var lastDate=new Date(timezone);
return Ext.util.Format.date(lastDate, this.format);
}
}
});
分享到:
相关推荐
Ext扩展dateField时间控件,可以选择年月日、年月、年、月
NULL 博文链接:https://newlethe.iteye.com/blog/814634
NULL 博文链接:https://javacoo.iteye.com/blog/1120263
1.此控件支持Ext3.2及以上版本 2.用法与Ext.form.DateField一样,xtype:'datetimefield' 3.不需要导入css或其他js 4.解决某些插件导入会显示对象未定义问题
Ext DateField控件 - 只选择年月插件。只有分享,我们才能不断进步!
extjs4.2 日期控件 datefield 拓展加上选择时分秒功能。 在ExtJs4.2表单控件里分别有个时间控件(datafield)和时间控件(timefield),但是官方提供的控件不能将日期和时分秒整合到一起,我从网上搜集整理了一个可用...
ext提供的datefield控件,只能选择年月日,此控件可以选择年月日小时分钟秒,附上用法说明,初学者一看即会用。值得大家下载。
ext中的日期控件没有十分秒,这个控件加入了时分秒的选择
考虑到extjs DateField的关键配置和主要操作
extjs中 google 不兼容 datefield 控件
2.可以根据DateField的formatString属性判断DateChooser中是否要展示时分秒等. 3.DateField跟DateChooser之间比较完善的互传数据. 4.DateChooser带确定按钮,提高用户的体验. 5.时分秒选择框可以循环展示数字.
cls : 'datefield-cls', overCls : 'datefield-over-cls', listeners : { 'focus': function(){//日期类型1:年月;2:年月日;3:年月日时分 SelectDate(this,3); ...
一个对Ext年月日控件进行更改的Js 更改后的控件只能选择年月 对月统计或其他只选择年月的方面 非常好用 在写datefield控件的时候 加上 plugins: 'monthPickerPlugin', 就可以了 format设置为'Y-m'
EXT扩展控件,可以选择日期和时间。 现在的EXT datefield只能到天,用了这个 控件后可以精确到分钟。
Ext Extjs 禁止文本和日期编辑 ExtJS中动态设置TextField的readOnly属性
关于Exjts2.2.1中datefield控件在IE8下显示不全BUG解决如下
ExtJs 的日期控件不带清空功能,项目有可能需要一个带清空功能的日期控件。
NULL 博文链接:https://zhaolianyang.iteye.com/blog/852544
1. Ext.form.NumberField 2. Ext.form.TextArea 3. Ext.form.TriggerField 4. Ext.form.DateField 5. Ext.form.ComboBox 6. Ext.form.TimeField
ext自身控件不能选择时分秒,网上找到的扩展的ext控件,可以选择到时分秒