根据不同条件覆盖 ExtJs 4 中的日期字段格式
Posted
技术标签:
【中文标题】根据不同条件覆盖 ExtJs 4 中的日期字段格式【英文标题】:Overriding datefield format in ExtJs 4 according to different conditions 【发布时间】:2014-06-24 15:39:01 【问题描述】:我想根据我来自的国家/地区覆盖日期字段格式。我编写了以下函数,然后使用 Ext.Loader.loadScript 来应用它。但这并没有覆盖日期字段格式。我正在 ExtJS 4 中实现这一点。有人可以建议我如何覆盖 datefiled 格式。谢谢你:)
function fnc()
switch (params.country)
case 'USA':
Ext.override(Ext.form.DateField,
format : 'm/d/Y'
);
Ext.override(Ext.grid.DateColumn,
format : 'm/d/Y'
);
Ext.override(Ext.picker.Date,
format : 'm/d/Y'
);
break;
case 'MEX':
Ext.override(Ext.form.DateField,
format : 'd/m/Y'
);
Ext.override(Ext.grid.DateColumn,
format : 'd/m/Y'
);
Ext.override(Ext.picker.Date,
format : 'd/m/Y'
);
break;
default:
Ext.override(Ext.form.DateField,
format : 'm/d/Y'
);
Ext.override(Ext.grid.DateColumn,
format : 'm/d/Y'
);
Ext.override(Ext.picker.Date,
format : 'm/d/Y'
);
break;
;
【问题讨论】:
我很确定在您的页面最初加载时必须进行覆盖,以便按照您的预期应用它们。这个函数什么时候运行? 这个函数在launch函数中运行 【参考方案1】:它现在正在工作, 开始时在app.js的launch函数中添加如下,
Ext.Loader.loadScript(url:URL,onLoad:function()
debugger;
var dateObj = ;
dateObj.format = "";
switch(country)
case "USA":
dateObj.format = "m/d/Y";
break;
case "MEX":
dateObj.format = "d/m/Y";
break;
default: // USA, etc.
dateObj.format = "m/d/Y";
Ext.override(Ext.form.field.Date, dateObj);
);
并且不要在字段定义中指定任何格式,
【讨论】:
以上是关于根据不同条件覆盖 ExtJs 4 中的日期字段格式的主要内容,如果未能解决你的问题,请参考以下文章