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 相关文章推荐
浅析用prototype定义自己的方法
Nov 14 Javascript
JavaScript/Js脚本处理html元素的自定义属性解析(亲测兼容Firefox与IE)
Nov 25 Javascript
js统计录入文本框中字符的个数并加以限制不超过多少
May 23 Javascript
javascript模拟实现ajax加载框实例
Oct 15 Javascript
探讨JavaScript语句的执行过程
Jan 28 Javascript
喜大普奔!jQuery发布 3.0 最终版
Jun 12 Javascript
打造自己的jQuery插件入门教程
Sep 23 Javascript
谈谈Vue.js——vue-resource全攻略
Jan 16 Javascript
js实现动态添加上传文件页面
Oct 22 Javascript
详解Vue+ElementUI从零开始搭建自己的网站(一、环境搭建)
Apr 30 Javascript
node-red File读取好保存实例讲解
Sep 11 Javascript
VUE实现密码验证与提示功能
Oct 18 Javascript
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
压力如何影响浓缩咖啡品质
2021/03/03 咖啡文化
PDO版本问题 Invalid parameter number: no parameters were bound
2013/01/06 PHP
php面向对象中static静态属性和静态方法的调用
2015/02/08 PHP
PHP基于yii框架实现生成ICO图标
2015/11/13 PHP
php用户登录之cookie信息安全分析
2016/05/13 PHP
PHP基于IMAP收取邮件的方法示例
2017/08/07 PHP
利用PHPStorm如何开发Laravel应用详解
2017/08/30 PHP
csdn 博客中实现运行代码功能实现
2009/08/29 Javascript
javascript 类定义的4种方法
2009/09/12 Javascript
基于jquery自己写tab滑动门(通用版)
2012/10/30 Javascript
JS完成代码前最好对其做5件事
2013/04/07 Javascript
js禁止页面使用右键(简单示例代码)
2013/11/13 Javascript
移动端滑动插件Swipe教程
2016/10/16 Javascript
AugularJS从入门到实践(必看篇)
2017/07/10 Javascript
JavaScript屏蔽Backspace键的实现代码
2017/11/02 Javascript
anime.js 实现带有描边动画效果的复选框(推荐)
2017/12/24 Javascript
使用Vue开发动态刷新Echarts组件的教程详解
2018/03/22 Javascript
详解Vue SPA项目优化小记
2018/07/03 Javascript
JS实现百度网盘任意文件强制下载功能
2018/08/31 Javascript
移动端吸顶fixbar的解决方案详解
2019/07/17 Javascript
nestjs中异常过滤器Exceptionfilter的具体使用
2021/02/07 Javascript
[01:15:45]DOTA2上海特级锦标赛B组小组赛#1 Alliance VS Spirit第一局
2016/02/26 DOTA
[02:49]2018DOTA2亚洲邀请赛主赛事决赛日战况回顾 Mineski鏖战5局夺得辉耀
2018/04/10 DOTA
python调用fortran模块
2016/04/08 Python
python快速建立超简单的web服务器的实现方法
2018/02/17 Python
浅谈Python中threading join和setDaemon用法及区别说明
2020/05/02 Python
HTML5 input元素类型:email及url介绍
2013/08/13 HTML / CSS
Expedia挪威官网:酒店、机票和租车
2018/03/03 全球购物
翻译专业应届生求职信
2013/11/23 职场文书
材料员岗位职责
2014/03/13 职场文书
医院领导班子四风问题对照检查材料
2014/10/26 职场文书
2015年保洁员工作总结
2015/05/04 职场文书
经费申请报告范文
2015/05/18 职场文书
巴黎圣母院读书笔记
2015/06/26 职场文书
基于Pygame实现简单的贪吃蛇游戏
2021/12/06 Python
TV动画「神渣☆爱豆」公开第一弹主视觉图
2022/03/21 日漫