#Vue# el-date-picker 日期选择器清空事件 (附源码)

需求:点击日期选择器的清空按钮,可以清空掉日期选择器的显示日期,以及重新刷新一遍表格列表的数据

 

由于Element-ui的el-date-picker中。没有内置清除按钮的回调函数

所以我们可以为el-date-picker设置一个change事件,并加入一个判断,若显示值为空的话,将页码设置为第一页,再请求一次列表数据接口

 源码如下

 <el-form-item label="开课日期"> 
     <el-date-picker
         v-model="formInline.start_date"
         type="daterange"
         align="center"
         unlink-panels
         value-format="yyyy-MM-dd"
         placeholder="选择开课日期" 
         range-separator="至"
         start-placeholder="开始日期"
         end-placeholder="结束日期"
         :picker-options="pickerOptions"
         clearable 
         @change="pickerChangeFn()">
    </el-date-picker>
</el-form-item>



 return {
         limit_rows:10,
         total_number:0,
         total_page:1,
         page:1,
         formInline: {
             start_date:[],
          },
          pickerOptions: {
          shortcuts: [{
            text: '最近一周',
            onClick(picker) {
              const end = new Date();
              const start = new Date();
              start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
              picker.$emit('pick', [start, end]);
            }
          }, {
            text: '最近一个月',
            onClick(picker) {
              const end = new Date();
              const start = new Date();
              start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
              picker.$emit('pick', [start, end]);
            }
          }, {
            text: '最近三个月',
            onClick(picker) {
              const end = new Date();
              const start = new Date();
              start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
              picker.$emit('pick', [start, end]);
            }
          }]
        }
     }



pickerChangeFn() {
   if(this.formInline.start_date == []){
          this.page = 1;  //将页码设置为第一页
       } 
          this.getClassList(); //重新请求一次列表接口
    },

猜你喜欢

转载自blog.csdn.net/ZHENGCHUNJUN/article/details/126915684