为日期选择器提供与datefield值不同的默认值?

时间:2017-05-03 17:59:52

标签: javascript extjs extjs4 extjs4.2

我在Extjs 4.2中工作并遇到有关datefield的问题。我想将字段的默认值设置为特定日期,但是当用户点击触发器以显示日期选择器窗口小部件时,我希望日期选择器突出显示当前日期 。我已经尝试在' expand'中的字段上使用setValue方法。事件处理程序,但这会更改日期字段本身的值,我不想发生这种情况。有没有办法实现这个目标?

1 个答案:

答案 0 :(得分:0)

将datepicker的activeDate成员设置为当前日期,然后更新选择器以显示突出显示的日期。这是在expand事件中完成的。

Ext.create('Ext.form.Panel', {
            renderTo: Ext.getBody(),
            width: 300,
            bodyPadding: 10,
            title: 'Dates',
            items: [{
                xtype: 'datefield',
                anchor: '100%',
                fieldLabel: 'From',
                name: 'from_date',
                value: new Date(2017,0,1),
                listeners: {
                    expand: function(field, opts) {
                        field.picker.activeDate = new Date();
                        field.picker.update(null, false);
                    }
                }
            }]
        });

在下面的示例中,日期设置为1月1日。当选择器被扩展时,它被设置为今天。

            Console.WriteLine("Original:   {0}", original);
            byte[] encrypted = EncryptStringToBytes_Aes(original, myAes.Key, myAes.IV);
            string result1 = Convert.ToBase64String(encrypted); //Convert binary data to base64 data
            Console.WriteLine("Encypted Data", result1);

            byte[] cipherbytes = Convert.FromBase64String(result1); // Convert base64 data to binary data
            string roundtrip = DecryptStringFromBytes_Aes(cipherbytes, myAes.Key, myAes.IV);