The project requirements are: select date and time, only select time after the current time, and disable the minimum level to minutes. There are two options <el-date-picker v-model="formInline.inventoryDate" type="date" align="right" placeholder="Please select a date" :picker-options="pickerOptions" value-format="yyyy-MM-dd" format="yyyy-MM-dd" @change="changeDate" ></el-date-picker> <el-time-picker v-model="formInline.inventoryDateTime" type="date" align="right" placeholder="Please select a time" :picker-options="{ selectableRange: this.startTimeRange }" @change="changeTime" value-format="HH:mm:ss" format="HH:mm:ss" ></el-time-picker> data(){ return { pickerOptions: { disabledDate: time => { return time.getTime() < Date.now() - 3600 * 1000 * 24 }, }, } }, watch: 'formInline.inventoryDate':{ deep:true, handler(newValue, oldValue) { if(newValue){ let nowDate = this.$options.filters['sendTimeDate'](new Date().getTime()+60*1000);// The time after one minute (I am due to business requirements, you can adjust the time here at will) let dt = nowDate.split(" "); let st = ''; if(newValue.split(" ")[0] == dt[0]){ // Today, the selected time starts from the current hour, minute, and second st = dt[1]; }else{ // Tomorrow and thereafter start at 0:00 st = '00:00:00'; } this.startTimeRange = st + '- 23:59:59'; //console.log(this.startTimeRange) //For example: If the time today is 10:41:40, then select the time range: 11:41:40 - 23:59:59 //Otherwise: 00:00:00 - 23:59:59 } }, } }, Idea: Use the disabledDate configuration item in the picker-options attribute of el-date-picker to disable the date picker first, so that it can only select dates after the current date, and then use watch to monitor the date selected by the date picker. If it is today, use the selectableRange configuration item in the picker-options attribute of el-time-picker to control the selectable time. Note: Although this logic can disable the selection of seconds, the selection of seconds is not disabled in the front-end page. When you select the previous seconds, the seconds after one minute will be displayed by default (I did it because of business requirements. You can adjust the disabled time period at will through the above code) Rendering effect: Let me summarize the first method. The date I disabled is before today, and the time range is from 22:00 to 02:00. I will directly post the code. <el-date-picker class="dateClass" v-model="aa" type="datetime" :picker-options="pickerOptions" placeholder="After 22:00" style="width:100%"> </el-date-picker> data() { return { aa: '', pickerOptions: { // Limit time selectableRange: ['22:00:00 - 23:59:59','00:00:00 - 02:00:00'], // You can also bind a variable here to dynamically limit the time // Limit date disabledDate: this.disabledDate }, } } , methods: { disabledDate(time) { return time.getTime() < Date.now() - 3600 * 1000 * 24 } } This is the end of this article about disabling part of the time in the TimePicker time selector in element (disabling to minutes). For more information about disabling part of the time in the element TimePicker, please search for previous articles on 123WORDPRESS.COM or continue to browse the following related articles. I hope you will support 123WORDPRESS.COM in the future! You may also be interested in:
|
<<: How to sort a row or column in mysql
>>: How to find slow SQL statements in MySQL
Table of contents 1. Brief Overview 2. JSON basic...
Typically, we use the following SQL statement to ...
Table of contents Demand background Thought Analy...
Due to work requirements, I recently spent some t...
I am very happy to attend this episode of potato ...
Table of contents background analyze method backg...
1. Embedded Software Level 1) Bootloader->Boot...
According to major websites and personal habits, ...
1. Implementation principle of Nginx load balanci...
Use native JS to write a nine-square grid to achi...
1. Download the virtual machine Official download...
Mybatis paging plug-in pageHelper detailed explan...
This article shares with you a detailed tutorial ...
1. All tags must have a corresponding end tag Prev...
Ubuntu does not allow root login by default, so t...