element-ui的timePicker与datePicker

最近在使用elemnet-ui的日期选择器TimePicker与DatePicker 日期选择器,想要实现结束时间小开始时间,废话不多说,代码如下:
dataPicker时:

<el-date-picker
              v-model="startTime"
              type="date"
              size="small"
              :picker-options="startPickerOptions"
              placeholder="开始时间">
</el-date-picker>
 <el-date-picker
             v-model="endTime"
             type="date"
             size="small"
            :picker-options="endPickerOptions"
            placeholder="结束时间">
</el-date-picker>
// 在data中声明的数据如下,开始时间默认为一个月之前
data () {
    return {
      startTime: new Date(new Date().setMonth((new Date().getMonth()-1))),
      endTime: new Date(),
     startPickerOptions: {
        disabledDate: (time) => {
          if (this.endTime != "") {
            return time.getTime() > Date.now() || time.getTime() > this.endTime;
          } else {
            return time.getTime() > Date.now();
          }
        }
      },
      endPickerOptions: {
        disabledDate: (time) => {
          return time.getTime() < this.startTime || time.getTime() > Date.now();
        }
      },
    }
  },

效果图如下:
在这里插入图片描述
使用timePicker时当有两个时间框且结束时间小于开始时间,picker-options不是一个函数,因此使用change函数改变selectableRange的值。
TimePicker时:

<el-time-picker
              v-model="time1"
               placeholder="开始时间"
              @change="changeStratTime"
              :picker-options="{selectableRange:startTime}">
</el-time-picker>
<el-time-picker
              v-model="time2"
             placeholder="结束时间"
              @change="changeEndTime"
              :picker-options="{selectableRange:endTime}">
</el-time-picker>
//data中数据
data () {
    return {
       time1: '',
       time2: '',
       startTime:'',
       endTime:''
    }
  },
//methods:
changeStratTime(item){
      this.endTime = this.formatDateTime(item)+'-23:59:59'
    },
    changeEndTime(item){
      this.startTime = '00:00:00-'+this.formatDateTime(item)
    },

效果图如下:
当开始时间选择好,结束时间就必须在开始之后,同理选择好结束时间,开始时间就在结束之前

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值