element-ui时间选择器--设置禁止选择的时间
场景需求:开始日期不能小于今天,在今天之前的日期禁止选择,结束日期不能小于开始日期,开始日期之前的日期禁止选择。
效果图:


element-ui的时间选择器中,有一个picker-options的属性,属性值中有个disabledDate可以设置禁用状态,类型为函数,参数为今天日期,通过返回Boolean值来确定日期是否可以选择。
因此,开始日期可以通过picker-options这个属性去设置禁用选项:
setStartDate(){
let time = this.getDate()//把当天时间转化为yyyy-MM-dd格式的方法
let self = this
let obj = Object.assign({},this.startDateLimit,{
disabledDate:function(date){
return self.getDate(date) < time
}
})
return obj
},
...
当选择完开始日期后,开始选择结束日期了,这时可以通过已经选择的开始日期来设置结束日期的禁选项。
在开始日期的选择器上绑定change事件,开始日期发生改变就可以立刻改变结束日期的禁选项。
changeEnd(){
//如果已经存在结束日期
if(this.form.endDate){
if(this.form.beginDate > this.form.endDate){
this.form.endDate = ''
this.$message.warning('结束日期小于开始日期,请重新选择')
return ;
}
}
//如果结束日期尚未选择
if(!this.form.beginDate){
this.$message.warning('请先选择开始日期')
this.endDateLimit = Object.assign({},this.endDateLimit,{
disabledDate:(date)=>{
return true
}
})
}else{
let self = this
this.endDateLimit = Object.assign({},this.endDateLimit,{
disabledDate:(date)=>{
return self.getDate(date) < this.form.beginDate
}
})
}
},
html代码:
<el-date-picker
size="mini"
class="s-form"
v-model="form.beginDate"
type="date"
@change="changeEnd"
:picker-options="startDateLimit"
clearable
value-format="yyyy-MM-dd"
placeholder="选择开始日期">
</el-date-picker>
-
<el-date-picker
v-model="form.endDate"
class="s-form"
:picker-options="endDateLimit"
@focus="changeEnd"
@change="setTime"
type="date"
clearable
size="mini"
value-format="yyyy-MM-dd"
placeholder="选择结束日期">
</el-date-picker>
element-ui时间选择器--设置禁止选择的时间的更多相关文章
- 使用element ui 日期选择器获取值后的格式问题
一般情况下,我们需要给后台的时间格式是: "yyyy-MM-dd" 但是使用Element ui日期选择器获取的值是这样的: Fri Sep :: GMT+ (中国标准时间) 在官 ...
- JQuery/JS select标签动态设置选中值、设置禁止选择 button按钮禁止点击 select获取选中值
//**1.设置选中值:(根据索引确定选中值)**// var osel=document.getElementById("selID"); //得到select的ID var o ...
- element-ui组件中时间选择器设置时间禁用
DateTimePicker 日期时间选择器 组件代码 <el-date-picker v-model="value1" type="datetime" ...
- element ui step组件在另一侧加时间轴显示
这是我开发的时候遇到的一个问题:项目需要在步骤条(竖直方向)的另一侧加时间显示,但是我在element ui 的step组件中一直没找着设置方法,所以就自己想了个办法加进来,效果如下: 代码如下,先上 ...
- vue element 时间选择器设置禁用日期
在 el-date-picker 组件中有一个 picker-options 属性 disabledDate 可以设置日期的可选范围 <el-date-picker v-model=" ...
- vue知识点----element UI+vue关于日期范围选择的操作,picker-options属性的使用
需求场景如下: 指定起止日期,后选的将会受到先选的限制 不同的日期选择器,不过也存在关联关系 实现方法不难,利用了 change 事件,动态改变 picker-options 中的 disableDa ...
- element ui DatePicker 禁用当前日之前的时间
<el-date-picker style="width:195px" value-format="yyyy-MM-dd" v-model="f ...
- element UI+vue关于日期范围选择的操作,picker-options属性的使用
一般 <el-date-picker />使用会出现起始日期和结束日期,结束日期不能早与起始日期,选择了其实日期后,结束日期大于起始日期的不可选,置灰,同理先选结束日期后再选起始日期,那么 ...
- Android日期时间选择器DatePicker、TimePicker日期时间改变事件响应(Android学习笔记)
activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android&qu ...
随机推荐
- Java之路---Day17(数据结构)
2019-11-04-23:03:13 目录: 1.常用的数据结构 2.栈 3.队列 4.数组 5.链表 6.红黑树 常用的数据结构: 包含:栈.队列.数组.链表和红黑树 栈: 栈:stack,又称堆 ...
- Vue项目运行或打包时,频繁内存溢出情况CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory
前端使用基于vue的Nuxt框架,但是随着项目功能增多,项目变大,频繁出现此种情况,原因是项目太大,导致内存溢出,排除代码问题外,可参照以下方式解决 解决方案 1.全局安装increase-memor ...
- vue工作原理分析
初始化 在 new Vue() 时会调⽤用_init()进⾏行行初始化,会初始化各种实例例⽅方法.全局⽅方法.执⾏行行⼀一些⽣生命周期. 初始化props. data等状态.其中最重要的是data的「 ...
- VBA笔记
1.VBA数据类型 数据类型 存储空间大小 范围 Byte 1个字节 0-255 Boolean 2个字节 true或false Integer 2个字节 -32768-32767 Long 4个字节 ...
- linq to js 用法
/** * 排序汇总 * */ var result = Enumerable.From(vm.productList).GroupBy("$.goods_id", null, f ...
- 监控微信小程序wx.request请求失败
在微信小程序里,与后台服务器交互的主要接口函数是wx.request(),用于发起 HTTPS 网络请求.其重要性不言而喻.然而,却经常遇到请求失败的问题,笔者特意谷歌"wx.request ...
- 配置OEL7 YUM源
用于其他发行版如rhel.centos有时候要用到oracle linux的源来装软件比如oracle.mysql等 配置oel7源 wget http://public-yum.oracle.com ...
- Zabbix监控服务器磁盘I/O
一.场景说明: 需要使用Zabbix监控服务器上各个磁盘的I/O使用率,当zabbix自身带的item无法满足我们的时候,则需自定义item. 包括: 磁盘读的次数 磁盘读的毫秒数 磁盘写的次 ...
- 《linux就该这么学》课堂笔记15 vsftpd文件传输、Samba/NFS文件共享
1.为了能够在如此复杂多样的设备之间(Windows.Linux.UNIX.Mac等不同的操作系统)解决问题解决文件传输问题,文件传输协议(FTP)应运而生. FTP服务器是按照FTP协议在互联网上提 ...
- ThinkPHP5框架引入的css等外部资源文件没有生效
静态资源文件一般是放在public目录里,不只是css,只要是静态资源文件都没有显示出来. (更好的阅读体验可访问 这里 ) 问题陈述 文件结构 文件内容 三个文件分别为:Index.php.test ...