• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    extjs 时间范围选择自动判断的实现代码

    发布者: 皮3591 | 发布时间: 2025-8-13 21:17| 查看数: 25| 评论数: 0|帖子模式

    extjs中 有时需要选择一个日期范围,需要自动判断,选择的开始日期不能大于结束日期,或结束日期不能小于开始日期,实现的代码如下
    效果图:

    从上图可以看到,当选择了一个开始时间后,会自动限制结束时间的选择范围,实现两个日期选择器的联动.
    代码如下:
    首先定义联动处理函数:
    1. Ext.apply(Ext.form.field.VTypes, {
    2. daterange: function (val, field) {
    3. var date = field.parseDate(val);

    4. if (!date) {
    5. return false;
    6. }
    7. if (field.startDateField && (!this.dateRangeMax || (date.getTime() != this.dateRangeMax.getTime()))) {
    8. var start = field.up('grid').down('#' + field.startDateField);
    9. start.setMaxValue(date);
    10. start.validate();
    11. this.dateRangeMax = date;
    12. }
    13. else if (field.endDateField && (!this.dateRangeMin || (date.getTime() != this.dateRangeMin.getTime()))) {
    14. var end = field.up('grid').down('#' + field.endDateField);
    15. end.setMinValue(date);
    16. end.validate();
    17. this.dateRangeMin = date;
    18. }
    19. return true;
    20. },
    21. daterangeText: '开始日期必须小于结束日期'
    22. });
    23. Ext.tip.QuickTipManager.init();
    复制代码
    在tbar,bbar或form中的items中增加:
    1. {
    2. xtype: 'datefield',
    3. fieldLabel: '时间范围 开始',
    4. name: 'startdt',
    5. id: 'startdt',
    6. vtype: 'daterange',
    7. endDateField: 'enddt',
    8. format: 'Y-m-d',
    9. width: 220,
    10. labelWidth: 90,
    11. msgTarget: 'side',
    12. autoFitErrors: false
    13. }, {
    14. xtype: 'datefield',
    15. fieldLabel: '结束',
    16. name: 'enddt',
    17. id: 'enddt',
    18. vtype: 'daterange',
    19. startDateField: 'startdt',
    20. format: 'Y-m-d',
    21. width: 170,
    22. labelWidth: 40,
    23. msgTarget: 'side',
    24. autoFitErrors: false
    25. }, { xtype: 'button',
    26. text: '查询',
    27. iconCls: 'fljs',
    28. handler: function () { ...
    复制代码
    即可实现以上效果 本代码复制在extjs4.1.1中运行

    来源:互联网
    免责声明:如果侵犯了您的权益,请联系站长(1277306191@qq.com),我们会及时删除侵权内容,谢谢合作!

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    ×

    最新评论

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表