<template>
<el-date-picker v-model="date" type="datetime" format="YYYY-MM-DD HH:mm" value-format="YYYY-MM-DD HH:mm"
:disabled-date="disabledDate" :disabled-hours="disabledHours" :disabled-minutes="disabledMinutes">
</el-date-picker>
</template>
<script setup lang="ts">
import { ref } from 'vue';
const date = ref<any>();
// 禁用当前时间之前的日期
const disabledDate = (time: any) => {
return time.getTime() < Date.now();
};
// 禁用当前时间之前的小时
const disabledHours = (time: any) => {
let day = new Date().getDate();
let dataTime = new Date(date.value).getDate();
// 当天才会禁用小时
if (day == dataTime) {
let arr = []
for (let i = 0; i < 24; i++) {
if (i < new Date().getHours()) {
arr.push(i)
}
}
return arr;
} else {
return []
}
};
// 禁用当前时间之前的分钟
const disabledMinutes = (time: any) => {
let arr = [];
let day = new Date().getDate();
let dataTime = new Date(date.value).getDate();
// 当天才会禁用分钟
if (day = dataTime) {
if (time == new Date().getHours()) {
for (let i = 0; i < 60; i++) {
if (i < new Date().getMinutes() + 1) {
arr.push(i)
}
}
}
return arr;
} else {
return []
}
};
</script>
element中时间日期组件,禁用当前时间一分钟之前(时分秒,只在当天生效)
最新推荐文章于 2026-07-07 16:48:51 发布
3328

被折叠的 条评论
为什么被折叠?



