extjs4 设置第一个datefield值小于第二个

本文介绍如何使用ExtJS设置两个日期控件的值,并确保第一个日期控件的值小于等于今天,第二个日期控件的值大于第一个控件且不大于今天。默认情况下,第一个控件显示昨天的日期,第二个控件显示今天的日期。

   实现功能:
       1.第一个日期控件的值 小于等于今天  ;
       2.第二个日期控件的值范围:大于第一个datefield的值并不大于当天。
    默认值:
       第一个控件值为昨天,第二个控件值为今天。两个datefield的值均不得大于今天。

    代码如下:

           {
            xtype: 'datefield',
            id: 'sdate',
            width: 220,
            fieldLabel: '开始时间',
            labelWidth: 100,
            labelAlign: 'right',
            emptyText: '请选择日期',
            format: 'Y-m-d',
            maxValue: new Date(),
            value: Ext.Date.add(new Date(), Ext.Date.DAY, -2),
            listeners: {
                'select': function () {
                    var start = Ext.getCmp('sdate').getValue();
                    Ext.getCmp('edate').setMinValue(start);
                    var endDate = Ext.getCmp('edate').getValue();
                    if (start > endDate) {
                        Ext.getCmp('edate').setValue(start);
                    }
                }
            }
        }, {
            xtype: 'datefield',
            id: 'edate',
            width: 175,
            labelWidth: 60,
            fieldLabel: '结束时间',
            labelAlign: 'right',
            emptyText: '请选择日期',
            format: 'Y-m-d',
            maxValue: new Date(),
            value: Ext.Date.add(new Date(), Ext.Date.DAY, -1),
            listeners: {
                select: function () {
                    var start = Ext.getCmp('sdate').getValue();
                    var endDate = Ext.getCmp('edate').getValue();
                    if (start > endDate) {
                        Ext.getCmp('sdate').setValue(endDate);
                    }
                }
            }
        }
     效果图如下:

 

转载于:https://my.oschina.net/yexingqianli/blog/171068

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值