通过:picker-options
来控制日期选择时的禁选状态
通过@change
方法来控制选择开始或结束时间后,相应的改变:picker-options
属性的值
<el-form-item label="开始时间" prop="zykssj">
<el-date-picker v-model="zyZdData.zykssj" :picker-options="zyZdData.traceStart" type="datetime"
@change="pickerOptionsStart(zyZdData)" placeholder="选择日期"
style="width: 83%;"></el-date-picker>
</el-form-item>
<el-form-item label="结束时间" prop="zyjssj">
<el-date-picker v-model="zyZdData.zyjssj" :picker-options="zyZdData.traceEnd" type="datetime"
@change="pickerOptionsEnd(zyZdData)" placeholder="选择日期"
style="width: 80%;"></el-date-picker>
</el-form-item>
pickerOptionsStart(item) {
if (item.zykssj !== null) {
//当前值为空 也会进行判断 所以条件最好不要非空验证
item.traceEnd = {
disabledDate: (time) => {
return time.getTime() < new Date(item.zykssj).getTime() //小于开始时间的不选
}
}
} else {
item.traceEnd = {
}
}
this.$forceUpdate();
},
pickerOptionsEnd(item) {
if (item.zyjssj !== null) {
//当前值为空 也会进行判断 所以条件最好不要非空验证
item.traceStart = {
disabledDate: (time) => {
return time.getTime() > new Date(item.zyjssj).getTime() //大于结束时间的不选
}
}
} else {
item.traceStart = {
}
}
this.$forceUpdate();
},