element-ui 限制日期选择的方法(datepicker)


Posted in Javascript onMay 16, 2018

Element-UI是饿了么前端团队推出的一款基于Vue.js 2.0 的桌面端UI框架,手机端有对应框架是 Mint UI 。

需求场景如下:

  1. 指定起止日期,后选的将会受到先选的限制
  2. 不同的日期选择器,不过也存在关联关系

实现方法不难,利用了 change 事件,动态改变 picker-options 中的 disableDate 即可。

查看Demo

Template

<script src="//unpkg.com/vue/dist/vue.js"></script>
<script src="//unpkg.com/element-ui@2.3.8/lib/index.js"></script>
<div id="app">
<template>
 <div class="block">
  <span class="demonstration">起始日期</span>
  <el-date-picker v-model="startDate" type="date" placeholder="选择日期" :picker-options="pickerOptionsStart" @change="changeEnd">
  </el-date-picker>
 </div>
 
 <div class="block">
  <span class="demonstration">截止日期</span>
  <el-date-picker v-model="endDate" type="date" placeholder="选择日期" :picker-options="pickerOptionsEnd" @change="changeStart">
  </el-date-picker>
 </div>
</template>
</div>

Script

var Main = {
  data() {
   return {
    pickerOptionsStart: {},
    pickerOptionsEnd:{},
    startDate: '',
    endDate: '',
   };
  },
  methods:{
   changeStart (){
    this.pickerOptionsStart = Object.assign({},this.pickerOptionsStart,{
     disabledDate: (time) => {
      return time.getTime() > this.endDate
     }
    })
   },
   changeEnd (){
    this.pickerOptionsEnd = Object.assign({},this.pickerOptionsEnd,{
     disabledDate: (time) => {
      return time.getTime() < this.startDate
      }
    })
   }
  }
 };
var Ctor = Vue.extend(Main)
new Ctor().$mount('#app')

Style

@import url("//unpkg.com/element-ui@2.3.8/lib/theme-chalk/index.css");

.block{
 margin-top:10px;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 短路法代码精简
Aug 20 Javascript
JavaScript CSS修改学习第六章 拖拽
Feb 19 Javascript
JavaScript 轻松搞定快捷留言功能 只需一行代码
Apr 01 Javascript
javascript中的缓动效果实现程序
Dec 29 Javascript
深入理解JavaScript是如何实现继承的
Dec 12 Javascript
jQuery Easyui datagrid/treegrid 清空数据
Jul 09 Javascript
使用do...while的方法输入一个月中所有的周日(实例代码)
Jul 22 Javascript
angularjs 源码解析之scope
Aug 22 Javascript
jquery插件锦集【推荐】
Dec 16 Javascript
jQuery插件echarts设置折线图中折线线条颜色和折线点颜色的方法
Mar 03 Javascript
详解node child_process模块学习笔记
Jan 24 Javascript
使用异步controller与jQuery实现卷帘式分页
Jun 18 jQuery
npm 更改默认全局路径以及国内镜像的方法
May 16 #Javascript
详解使用create-react-app快速构建React开发环境
May 16 #Javascript
seajs下require书写约定实例分析
May 16 #Javascript
Vue使用高德地图搭建实时公交应用功能(地图 + 附近站点+线路详情 + 输入提示+换乘详情)
May 16 #Javascript
基于Vue2x实现响应式自适应轮播组件插件VueSliderShow功能
May 16 #Javascript
vue input 输入校验字母数字组合且长度小于30的实现代码
May 16 #Javascript
详解通过源码解析Node.js中cluster模块的主要功能实现
May 16 #Javascript
You might like
比较discuz和ecshop的截取字符串函数php版
2012/09/03 PHP
PHP实现的比较完善的购物车类
2014/12/02 PHP
PHP封装的数据库保存session功能类
2016/07/11 PHP
php将服务端的文件读出来显示在web页面实例
2016/10/31 PHP
php使用mysqli和pdo扩展,测试对比mysql数据库的执行效率完整示例
2019/05/09 PHP
JS俄罗斯方块,包含完整的设计理念
2010/12/11 Javascript
jquery插件validate验证的小例子
2013/05/08 Javascript
jquery cookie实现的简单换肤功能适合小网站
2013/08/25 Javascript
Jquery设置attr的disabled属性控制某行显示或者隐藏
2014/09/25 Javascript
浅谈Javascript中匀速运动的停止条件
2014/12/19 Javascript
js实现上传图片及时预览
2016/05/07 Javascript
JavaScript实现DOM对象选择器
2016/09/24 Javascript
localStorage实现便签小程序
2016/11/28 Javascript
vue2.0 与 bootstrap datetimepicker的结合使用实例
2017/05/22 Javascript
微信小程序之swiper轮播图中的图片自适应高度的方法
2018/04/23 Javascript
JS内部事件机制之单线程原理
2018/07/02 Javascript
js 实现在2d平面上画8的方法
2018/10/10 Javascript
JS实现的排列组合算法示例
2019/07/16 Javascript
为Python的web框架编写MVC配置来使其运行的教程
2015/04/30 Python
Python django实现简单的邮件系统发送邮件功能
2017/07/14 Python
python django 增删改查操作 数据库Mysql
2017/07/27 Python
python实现八大排序算法(2)
2017/09/14 Python
Python闭包思想与用法浅析
2018/12/27 Python
浅析pip安装第三方库及pycharm中导入第三方库的问题
2020/03/10 Python
Pycharm连接远程服务器过程图解
2020/04/30 Python
python 递归相关知识总结
2021/03/03 Python
加拿大专业美发产品购物网站:Chatters
2021/02/28 全球购物
武汉世纪畅想数字传播有限公司.NET笔试题
2014/07/22 面试题
详细的大学生创业计划书模板
2014/01/27 职场文书
应届大专生求职信
2014/06/26 职场文书
机械设备与数控技术专业求职信
2014/08/10 职场文书
任命书怎么写
2015/03/02 职场文书
2015年乡镇党务公开工作总结
2015/05/19 职场文书
自己搭建resnet18网络并加载torchvision自带权重的操作
2021/05/13 Python
详解Python如何批量采集京东商品数据流程
2022/01/22 Python
Moment的feature导致线上bug解决分析
2022/09/23 Javascript