需求:日期范围选择器,当选择好一个日期范围时,立即触发查询功能

<el-date-picker
v-model="dateVal"
type="daterange"
size="small"
format="yyyy 年 MM 月 dd 日"
value-format="yyyy-MM-dd HH:mm:ss"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
:picker-options="pickerOption"
:default-time="['00:00:00', '23:59:59']">
</el-date-picker>

js代码:

<script type="text/ecmascript-6">
import Detail from './detail'
import API from 'api/api_list' export default {
data() {
return {
loading: false,
dateVal: '',
pickerOption: { // 自定义周期快捷选项
shortcuts: [{
text: '最近一周',
onClick: (picker => {
const end = new Date();
const start = new Date();
start.setHours(0);
start.setMinutes(0);
start.setSeconds(0);
end.setHours(23);
end.setMinutes(59);
end.setSeconds(59);
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit('pick', [start, end]);
this.searchChangeDate();
})
}, {
text: '最近一个月',
onClick: (picker => {
const end = new Date();
const start = new Date();
start.setHours(0);
start.setMinutes(0);
start.setSeconds(0);
end.setHours(23);
end.setMinutes(59);
end.setSeconds(59);
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit('pick', [start, end]);
this.searchChangeDate();
})
}, {
text: '最近三个月',
onClick: (picker => {
const end = new Date();
const start = new Date();
start.setHours(0);
start.setMinutes(0);
start.setSeconds(0);
end.setHours(23);
end.setMinutes(59);
end.setSeconds(59);
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit('pick', [start, end]);
this.searchChangeDate();
})
}, {
text: '最近半年',
onClick: (picker => {
const end = new Date();
const start = new Date();
start.setHours(0);
start.setMinutes(0);
start.setSeconds(0);
end.setHours(23);
end.setMinutes(59);
end.setSeconds(59);
start.setTime(start.getTime() - 3600 * 1000 * 24 * 180);
picker.$emit('pick', [start, end]);
this.searchChangeDate();
})
}, {
text: '最近一年',
onClick: (picker => {
const end = new Date();
const start = new Date();
start.setHours(0);
start.setMinutes(0);
start.setSeconds(0);
end.setHours(23);
end.setMinutes(59);
end.setSeconds(59);
start.setTime(start.getTime() - 3600 * 1000 * 24 * 365);
picker.$emit('pick', [start, end]);
this.searchChangeDate();
})
}],
onPick: (dateRange => {
if(!dateRange.maxDate) {
return;
}
this.dateVal = [dateRange.minDate, dateRange.maxDate];
this.searchChangeDate();
})
},
}
},
created() {
this._getLists();
},
methods: {
// 日期筛选
searchChangeDate() {
if (this.dateVal) {
this._getLists();
}
},
//获取列表信息
_getLists() {
// ...
}
},
}
</script>

element-ui日期筛选:选择日期即触发查询的更多相关文章

  1. datetimepicker日期框选择后,无法触发bootstrapValidator

    如上图所示,当选择日期后下面的"栏位不能为空"提示并不能及时的消失,同时点击提交按钮也没有用. 解决如下: 在birthday的校验规则里面添加trigger:'change',就 ...

  2. vue知识点----element UI+vue关于日期范围选择的操作,picker-options属性的使用

    需求场景如下: 指定起止日期,后选的将会受到先选的限制 不同的日期选择器,不过也存在关联关系 实现方法不难,利用了 change 事件,动态改变 picker-options 中的 disableDa ...

  3. element UI+vue关于日期范围选择的操作,picker-options属性的使用

    一般 <el-date-picker />使用会出现起始日期和结束日期,结束日期不能早与起始日期,选择了其实日期后,结束日期大于起始日期的不可选,置灰,同理先选结束日期后再选起始日期,那么 ...

  4. element ui 时间控件 多个日期

    前言:工作中用到 vue+element ui 的前端框架,需要使用时间控件来选择多个日期,已月日的形式,且有默认值,所以记录一下.转载请注明出处:https://www.cnblogs.com/yu ...

  5. [原] XAF 添加日期筛选下拉选择

    1.ListView 添加日期筛选下拉选择,选择指定,可指定日期范围 2.Code using DevExpress.Data.Filtering; using DevExpress.ExpressA ...

  6. 使用element ui 日期选择器获取值后的格式问题

    一般情况下,我们需要给后台的时间格式是: "yyyy-MM-dd" 但是使用Element ui日期选择器获取的值是这样的: Fri Sep :: GMT+ (中国标准时间) 在官 ...

  7. bootstrap-datepicker 与bootstrapValidator同时使用时,选择日期后,无法正常触发校验

    bootstrap-datepicker 与bootstrapValidator同时使用时,选择日期后,无法正常触发校验 (解决办法) http://blog.csdn.net/biedazhangs ...

  8. element ui 日期控件范围时间限制记录、以及计算两个日期之间的天数

    日期的筛选经常会有最小的日期选择,例如:当前日期 :clearable="false" :picker-options="pickerOptions0" val ...

  9. WdatePicker日期控件使用与值获取,以及选择日期完毕触发事件

    踩过无数坑,调试了很长时间,写出适合自己需求的方法需求:没有查询按钮,要求选择日期后自动触发查询事件(只有日期选择完成后才触发), 解决方案:代码如下:检索开始时间: <input type=& ...

随机推荐

  1. SpringBoot dev-tools vjtools dozer热启动类加载器不相同问题

    最近使用唯品会的vjtools的BeanMapper进行对象的深度克隆转换DTO/VO这种操作,Spring Boot的dev-tools热启动,需要把vjtools和dozer包都放到spring- ...

  2. Xamarin图表开发基础教程(8)OxyPlot框架

    Xamarin图表开发基础教程(8)OxyPlot框架 [示例OxyPlotFormsDemo]在Xamarin.Forms中实现线图的显示. (1)打开Xamarin.Forms项目. (2)将Ox ...

  3. PHP 发送 POST 值到任意 url

    以下方法可以实现将 POST 值发送到 url,并获取返回值 $url = 'http://www.someurl.com'; $myvars = 'myvar1=' . $myvar1 . '&am ...

  4. 使用yarn代替npm作为node.js的模块管理器

    使用yarn代替npm作为node.js的模块管理器 转 https://www.jianshu.com/p/bfe96f89da0e     Fast, reliable, and secure d ...

  5. Excel 如何查找 问号 “?” 、星号“*” 、 “~”号

    若需要查找问号“?”,则在查找内容文本框中输入“~?”.“?”为通配符,代替单个任意字符,如果直接查找,会找到包含数据的所有单元格. 若需要查找星号“*”,则在查找内容文本框中输入“~*”.“*”为通 ...

  6. pycharm使用(持续更新)

    1.Anaconda版本下载 https://repo.continuum.io/archive/

  7. libpng error: IHDR: CRC error

    原本正常显示在主页端logo图片无法显示了,爆出如下错误: libpng error: IHDR: CRC error 查找原因如下:

  8. KAFKA:如何做到1秒发布百万级条消息

    http://rdcqii.hundsun.com/portal/article/709.html KAFKA是分布式发布-订阅消息系统,是一个分布式的,可划分的,冗余备份的持久性的日志服务.它主要用 ...

  9. Docker实践之03-Dockerfile指令详解

    目录 FROM,指定基础镜像 RUN,执行命令 COPY,复制文件 ADD,复制并解压文件 CMD,容器启动命令 ENTRYPOINT,入口点 ENV,设置环境变量 ARG,构建参数 VOLUME,定 ...

  10. Jenkins - 构建项目

    1 - 登录 进入起始界面 2 - 创建并运行第一个Jenkins项目 新建Item:创建新项目 --->Freestyle project:通用的项目创建方法 --->在新建项目页面(添 ...