el-date-picker 时间控件校验选择时间必须早于当前时间(带时分秒)

el-date-picker 时间控件校验选择时间必须遭早于当前时间(带时分秒),然后监控时间控件,当时间改变的时候,如果不是当天,那时间可以选择全天也就是00-24时,如果是当天,就是当前时间之前

html部分

 <el-form-item label="注销时间" prop="logoutTime">
                <el-date-picker
                  v-model="formData.logoutTime"
                  :placeholder="'请选择注销时间'"
                  type="datetime"
                  :picker-options="pickerOptions"

                  style="width: 200px">
                </el-date-picker>
              </el-form-item>

//js部分

data(){

pickerOptions: {
  disabledDate(time) {
    const date = new Date();
    return time.getTime() > new Date().getTime();
    // return time.getTime() > new Date().getTime() - 86400000;//这个不包含当天
  },
  selectableRange: (() => {
    let data = new Date();
    let hour = data.getHours();
    let minute = data.getMinutes();
    let second = data.getSeconds();
    return [`00:00:01 - ${hour}:${minute}:${second}`]
  })(),
},
}

//监听时间控件的改变值
    watch: {
  
      'formData.logoutTime':{
        handler(newVal, oldVal) {
          //这里判断是不是今天
         let newValDate= new Date(newVal)//转换成中国标准时间
          if (
            newValDate &&newValDate.getFullYear() == new Date().getFullYear() &&
            newValDate.getMonth() == new Date().getMonth() &&
            newValDate.getDate() == new Date().getDate()
          ) {
            //如果为今天,则限制当前时间后的时间不能选择。
            let data = new Date();
            let hour = data.getHours();
            let minute = data.getMinutes();
            let second = data.getSeconds();
            this.pickerOptions.selectableRange = [`00:00:01 - ${hour}:${minute}:${second}`]
          }else{
            //如果不是今天,则不用限制
            this.pickerOptions.selectableRange = "00:00:00 - 23:59:00";
          }
        }
      }
    },
相关推荐
cc蒲公英5 分钟前
vue2中使用vue-office库预览pdf /docx/excel文件
前端·vue.js
一嘴一个橘子7 分钟前
js 将二进制文件流,下载为excel文件
javascript
Sam902918 分钟前
【Webpack--013】SourceMap源码映射设置
前端·webpack·node.js
Python私教1 小时前
Go语言现代web开发15 Mutex 互斥锁
开发语言·前端·golang
A阳俊yi1 小时前
Vue(13)——router-link
前端·javascript·vue.js
小明说Java1 小时前
Vue3祖孙组件通信探秘:运用provide与inject实现跨层级数据传递
前端
好看资源平台1 小时前
前端框架对比与选择:如何在现代Web开发中做出最佳决策
前端·前端框架
4triumph1 小时前
Vue.js教程笔记
前端·vue.js
程序员大金2 小时前
基于SSM+Vue+MySQL的酒店管理系统
前端·vue.js·后端·mysql·spring·tomcat·mybatis
清灵xmf2 小时前
提前解锁 Vue 3.5 的新特性
前端·javascript·vue.js·vue3.5