技术背景
公司之前日期选择只做到年月日,所以也只限制到了年月日;现在精确到时分秒的也要加限制。
技术查询结果
使用disabledDate设置禁用状态,参数为当前日期,要求返回 Boolean;
使用selectableRange设置可选区间,参数可为字符串或者数组,详情可查看官方文档:element-ui官方文档
限制年月日代码
// 时间选择器开始时间只可以选择今天之前的时间
beginDate () {
const self = this
return {
disabledDate (time) {
if (self.searchForm.lastUpdateDateEnd) {
// 如果结束时间不为空,则小于结束时间
// 替换的目的(时间 2020-09-09 在IE中不支持; 2020/09/09 在IE中支持)
// self.searchForm.lastUpdateDateEnd = self.searchForm.lastUpdateDateEnd.replace(/-/g, '/')
const lastTime = new Date(self.searchForm.lastUpdateDateEnd).getTime() // 选中的时间
if (lastTime < Date.now()) {
return lastTime < time.getTime()
} else {
// 开始时间不得超过当前天,如果开始时间可以大于当前时间,直接注释当前代码即可
return time.getTime() > Date.now()
}
} else {
return time.getTime() > Date.now() // 开始时间不选时,结束时间最大值小于等于当天
}
}
}
},
// 时间选择器结束之前不能小于开始时间
processDate () {
const self = this
return {
disabledDate (time) {
if (self.searchForm.lastUpdateDateBegin) {
// 如果开始时间不为空,则结束时间大于开始时间
// self.searchForm.lastUpdateDateBegin = self.searchForm.lastUpdateDateBegin.replace(/-/g, '/')
return new Date(self.searchForm.lastUpdateDateBegin).getTime() > time.getTime()
}
}
}
}
博文内容过长,无法发布,限制时分秒的代码在另一个博文中。
时空传送:https://editor.csdn.net/md/?articleId=123573242