vue+element-ui?校驗開始時間與結(jié)束時間的實現(xiàn)代碼
更新時間:2024年07月15日 10:02:51 作者:是小張吖~
這篇文章主要介紹了vue+element-ui?校驗開始時間與結(jié)束時間的代碼實現(xiàn),最主要的需求是開始時間不能早于當前時間,感興趣的朋友跟隨小編一起看看吧
需求背景:開始時間不能早于當前時間(此刻之前不可選)
代碼實現(xiàn):
<template> <div> <ElForm v-model="basicMessage" :rules="basicMessageRules"> <ElFormItem prop="startTime"> <!-- 此處用到的是el-element的日期時間選擇器 --> <!-- 通過設置type屬性為datetime,即可在同一個選擇器里同時進行日期和時間的選擇??旖葸x項的使用方法與 Date Picker 相同。 --> <ElDatePicker v-model="basicMessage.startTime" value-format="yyyy-MM-dd HH:mm:ss" type="datetime" :picker-options="pickerOptions" placeholder="選擇執(zhí)行開始時間" > </ElDatePicker> </ElFormItem> <span style="margin: 0 8px">-</span> <ElFormItem prop="endTime"> <ElDatePicker v-model="basicMessage.endTime" value-format="yyyy-MM-dd HH:mm:ss" type="datetime" :picker-options="pickerOptions" placeholder="選擇執(zhí)行結(jié)束時間"> </ElDatePicker> </ElFormItem> </ElForm> </div> </template> <script> export default { data () { return { // picker-options設置日期可選范圍 disabledDate (time) { return time.getTime() < new Date().getTime() - 86400000 }, // 控制時分秒不可選 selectableRange: (() => { const data = new Date() const hour = data.getHours() const minute = data.getMinutes() const second = data.getSeconds() return [`${hour}:${minute}:${second} - 23:59:59`] })(), basicMessage: { startTime: '', endTime: '' }, // 自定義校驗規(guī)則 basicMessageRules: { startTime: { validator: this.validStartTime, trigger: 'blur' }, endTime: { validator: this.validEndTime, trigger: 'blur' } } } }, methods: { /* 校驗活動區(qū)間 */ validStartTime (rule, value, callback) { if (!value) { callback(new Error('請選擇開始時間')) } else { if (this.basicMessage.startTime) { this.$refs.basicMessage.validateField('endTime') } callback() } }, validEndTime (rule, value, callback) { // 判斷結(jié)束時間不得晚于當前時間(看自己需求) if (new Date(value).getTime() < new Date().getTime()) { callback(new Error('結(jié)束時間不得晚于當前時間')) } if (!value) { callback(new Error('請選擇結(jié)束時間')) } else { if (!this.basicMessage.startTime) { callback(new Error('請選擇開始時間!')) } else if (Date.parse(this.basicMessage.startTime) >= Date.parse(value)) { callback(new Error('結(jié)束時間必須大于開始時間!')) } else { callback() } } } } } </script>
到此這篇關(guān)于vue+element-ui 校驗開始時間與結(jié)束時間的文章就介紹到這了,更多相關(guān)vue element-ui 校驗時間內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
el-table表格動態(tài)合并相同數(shù)據(jù)單元格(可指定列+自定義合并)
工作時遇到的el-table合并單元格的需求,本文主要介紹了el-table表格動態(tài)合并相同數(shù)據(jù)單元格(可指定列+自定義合并),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-07-07vue+element獲取el-table某行的下標,根據(jù)下標操作數(shù)組對象方式
這篇文章主要介紹了vue+element獲取el-table某行的下標,根據(jù)下標操作數(shù)組對象方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨想過來看看吧2020-08-08vite.config.ts配置之自動導入element-puls方式
這篇文章主要介紹了vite.config.ts配置之自動導入element-puls方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-10-10