gpt4 book ai didi

javascript - Ext JS DisplayField如何更改动态加载的值

转载 作者:行者123 更新时间:2023-11-28 08:44:05 26 4
gpt4 key购买 nike

我有一个在程序运行时动态加载的 DisplayField。它正在加载格式为“Ymd”(没有分隔符)的日期值,我想要的是在加载后将日期格式更改为“d.m.Y”。

现在,我有一个基本的 DisplayField 类,并在我的程序中扩展它。我想用我的基类上的事件来格式化该值。我能够使用更改事件格式化该值,但它会导致另一个更改事件,然后进入循环。我使用了另一个计数器变量来防止循环,但是还有另一种方法可以更干净地实现它吗?

我的显示字段:

Ext.define('MyDisplayField', {
extend: 'Ext.form.DisplayField',
enableDateFormat: false,
dateFormat: GlobalConfigProperties.dateFormat,
counter : 0,
initComponent: function() {
var me = this;

Ext.applyIf(me, {
listeners: {
change: function(field, newValue, oldValue, eOpts) {
if(field.enableDateFormat && field.counter == 0) {
field.counter = 1;
var date = Ext.Date.parse(newValue, 'Ymd');
field.setValue(Ext.Date.format(date, field.dateFormat));
}
}
}
});
}

});

最佳答案

尝试使用setRawValue ,它应该绕过更改检测。

关于javascript - Ext JS DisplayField如何更改动态加载的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20091053/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com