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

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

效果图:

从上图可以看到,当选择了一个开始时间后,会自动限制结束时间的选择范围,实现两个日期选择器的联动.

代码如下:

首先定义联动处理函数:

Ext.apply(Ext.form.field.VTypes, {

daterange: function (val, field) {

var date = field.parseDate(val);

if (!date) {

return false;

}

if (field.startDateField && (!this.dateRangeMax || (date.getTime() != this.dateRangeMax.getTime()))) {

var start = field.up('grid').down('#' + field.startDateField);

start.setMaxValue(date);

start.validate();

this.dateRangeMax = date;

}

else if (field.endDateField && (!this.dateRangeMin || (date.getTime() != this.dateRangeMin.getTime()))) {

var end = field.up('grid').down('#' + field.endDateField);

end.setMinValue(date);

end.validate();

this.dateRangeMin = date;

}

return true;

},

daterangeText: '开始日期必须小于结束日期'

});

Ext.tip.QuickTipManager.init();

在tbar,bbar或form中的items中增加:

{

xtype: 'datefield',

fieldLabel: '时间范围 开始',

name: 'startdt',

id: 'startdt',

vtype: 'daterange',

endDateField: 'enddt',

format: 'Y-m-d',

width: 220,

labelWidth: 90,

msgTarget: 'side',

autoFitErrors: false

}, {

xtype: 'datefield',

fieldLabel: '结束',

name: 'enddt',

id: 'enddt',

vtype: 'daterange',

startDateField: 'startdt',

format: 'Y-m-d',

width: 170,

labelWidth: 40,

msgTarget: 'side',

autoFitErrors: false

}, { xtype: 'button',

text: '查询',

iconCls: 'fljs',

handler: function () { ...

即可实现以上效果 本代码复制在extjs4.1.1中运行相关阅读:

12个不为大家熟知的HTML5设计小技巧

jquery表单插件Autotab使用方法详解

深入sql多表差异化联合查询的问题详解

探讨如何把session存入数据库

MySQL备份与恢复之冷备(1)

C#使用晚绑定来实现压缩Access数据库的方法

node.js开机自启动脚本文件

js正则表达exec与match的区别说明

苹果MAC安装Win10后iTunes提示错误代码-54的解决办法

Win10怎么使用事件查看器查看磁盘检查详细结果?

display:inline-block的使用示例

asp.net实现DataList与Repeater嵌套绑定的方法

win10系统IIS开启ASP程序错误信息怎么调试?

Jquery $.getJSON 在IE下的缓存问题解决方法

php 自动选择时间的代码,JavaScript_extjs 时间范围选择自动判断的实现代码,extjs中 有时需要选择一个日期 - phpStudy...相关推荐

  1. java编写日期年月日的代码_求Java高手写道题设int year,month,day分别表示一个日期中的年月日,试编程求a) 对于任意三个整数,判...

    共回答了15个问题采纳率:100% import java.util.*; public class Test24 { public static void main(String[] args) { ...

  2. 实战:向GitHub提交代码时触发Jenkins自动构建

    当我们提交代码到GitHub后,可以在Jenkins上执行构建,但是每次都要动手去执行略显麻烦,今天我们就来实战Jenkins的自动构建功能,每次提交代码到GitHub后,Jenkins会进行自动构建 ...

  3. u盘自动运行bat_如何让u盘插入电脑后自动播放 u盘插入电脑后自动播放方法

    相信大家都知道U盘有一个自动播放的功能,一插入电脑它就自动运行某个程序,本来这个功能是为了大家能更方便的使用U盘,但是由于这个功能经常被病毒利用,所以现在很多杀毒软件检查到AUTORUN.INF文件就 ...

  4. 商业隔断装修中的材料选择有何注意事项?

    在商业隔断装修中,材料选择非常重要.以下是一些注意事项: 1. 需要考虑材料的质量和耐用性.商业场所通常需要经历更加频繁的使用和更大的人流量,因此所选材料应具有较高的耐磨和耐用性,能够经受住日常使用和 ...

  5. vscode安装python插件成功 调试时通知一直在载入_vscode写python时的代码错误提醒和自动格式化...

    python的代码错误检查通常用pep8.pylint和flake8,自动格式化代码通常用autopep8.yapf.black.这些工具均可以利用pip进行安装,这里介绍传统的利用pip.exe安装 ...

  6. 使用Visual Studio宏来自动生成代码 [ Visual Studio | 宏 | 自动生成代码 ]

    前言 宏的定义:是组合到一起形成一个命令以自动完成某项任务的一系列命令和指令.(MSDN) 在使用Visual Studio宏实现JS折叠功能的时候就想过用它来实现代码自动生成,有了前面的基础,实现起 ...

  7. HighNewTech:低代码(0代码/无代码,无需代码)开发的简介以及如何选择最合适的低代码开发工具

    High&NewTech:低代码(0代码/无代码,无需代码)开发的简介以及如何选择最合适的低代码开发工具 导读:在互联网时代,博主经常反思一个问题,如何跟进这个快速发展的时代才能不会被淘汰?博 ...

  8. antd vue 多个下拉 联动_Antd下拉选择,自动匹配功能的实现

    我就废话不多说了,大家还是直接看代码吧~ placeholder="客户名称" showSearch optionFilterProp="children"// ...

  9. python输入代码界面通常_vscode写python时的代码错误提醒和自动格式化的方法

    python的代码错误检查通常用pep8.pylint和flake8,自动格式化代码通常用autopep8.yapf.black.这些工具均可以利用pip进行安装,这里介绍传统的利用pip.exe安装 ...

  10. python自动读取excel文件邮箱列表,自动批量发送邮件项目(附使用方法+代码)

    python自动发送邮件项目 项目简介 使用方法 项目结构 完整项目代码 结语 项目简介 该项目功能是利用python自动读取excel文件中的邮箱列表,并批量发送邮件到目标邮箱,进行客户挖掘的.该项 ...

最新文章

  1. 在React Hook里使用history.push跳转
  2. emv中的 部分匹配_【干货】EMV指标的精准运用
  3. 【博客】博客资源汇总
  4. Linux进阶之软件管理
  5. 换行 输出txt_编程短文:Bash echo如何原生输出带空格的字符串而不换行
  6. 配置linux普通用户无密码执行sudo命令
  7. 好的技术不一定能给你带来财富,但是好的工具一定可以让你创造财富
  8. mac内存空间不足怎么办?试试删除这几个文件夹!
  9. 运用系统分析方法,分析校园二手交易平台的可行性
  10. the pbr guide总结
  11. umi路由懒加载和权限验证(基于React)
  12. Bluetooth tethering不能用问题
  13. 国外免费杀毒软件AVG、Avast、小红伞体验
  14. pink老师学习之Echarts
  15. 如何快速干净的卸载mysql数据库,不影响下次安装
  16. Android小红书发帖api接口,小红书Android客户端演进之路
  17. Mac OS下MAT(Memory Analyzer Tool)安装与启动
  18. 开发者年度盛宴,OpenI/O 2020启智开发者大会即将开幕!
  19. 10天精读掌握:计算机组成与设计(COAD:Patterson and Hennessy) (第3天 2018/10.26)
  20. [BZOJ1787][Ahoi2008]Meet 紧急集合

热门文章

  1. One-hot 编码/TF-IDF 值来提取特征,LAD/梯度下降法(Gradient Descent),Sigmoid
  2. 关于新建android项目时 appcompat_v7报错问题的一点总结
  3. 【ZZ】ubuntu9.10桌面版使用(一)基础安装配置
  4. Litespeed如何安装phpmyadmin/pureftpd
  5. exe文件打不开应该怎么办?
  6. Java中必须了解的常用类
  7. Oracle12c用户名scott,Oracle12c新特性pdborcl,如何登录到普通用户scott ?
  8. Linux怎么删掉ftp服务器,Linux怎么删掉ftp服务器
  9. word 代码块_Python+Excel+Word一秒制作百份合同
  10. Android 摄像头