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 相关文章推荐
js中的scroll和offset 使用比较的实例与分析
Sep 29 Javascript
js switch case default 的用法示例介绍
Oct 23 Javascript
检查输入的是否是数字使用keyCode配合onkeypress事件
Jan 23 Javascript
JS实现鼠标箭头变成一个燃烧烛光效果的方法
Feb 28 Javascript
JavaScript跨平台的开源框架NativeScript
Mar 24 Javascript
Jquery EasyUI实现treegrid上显示checkbox并取选定值的方法
Apr 29 Javascript
详解Angularjs在控制器(controller.js)中使用过滤器($filter)格式化日期/时间实例
Feb 17 Javascript
vue-cli实现多页面多路由的示例代码
Jan 30 Javascript
vue完成项目后,打包成静态文件的方法
Sep 03 Javascript
基于JS抓取某高校附近共享单车位置 使用web方式展示位置变化代码实例
Aug 27 Javascript
JS实现省市县三级下拉联动
Apr 10 Javascript
微信小程序之导航滑块视图容器功能的实现代码(简单两步)
Jun 19 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
利用PHP实现智能文件类型检测的实现代码
2011/08/02 PHP
让ThinkPHP支持大小写url地址访问的方法
2014/10/31 PHP
php实现的错误处理封装类实例
2017/06/20 PHP
jquery attr 设定src中含有&amp;(宏)符号问题的解决方法
2011/07/26 Javascript
JavaScript高级程序设计 读书笔记之九 本地对象Array
2012/02/27 Javascript
javascript验证上传文件的类型限制必须为某些格式
2013/11/14 Javascript
nodejs的10个性能优化技巧
2014/07/15 NodeJs
js实现二级菜单渐隐显示
2015/11/03 Javascript
jquery实现鼠标悬浮停止轮播特效
2020/08/20 Javascript
深入浅析JavaScript的API设计原则
2016/06/14 Javascript
javascript弹出带文字信息的提示框效果
2016/07/19 Javascript
ES6通过babel转码使用webpack使用import关键字
2016/12/13 Javascript
Vue-component全局注册实例
2018/09/06 Javascript
Vue项目路由刷新的实现代码
2019/04/17 Javascript
解决layui数据表格table的横向滚动条显示问题
2019/09/04 Javascript
Python实现冒泡,插入,选择排序简单实例
2014/08/18 Python
python读取与写入csv格式文件的示例代码
2017/12/16 Python
Python中new方法的详解
2019/01/15 Python
ORM Django 终端打印 SQL 语句实现解析
2019/08/09 Python
使用python写的opencv实时监测和解析二维码和条形码
2019/08/14 Python
python模拟点击网页按钮实现方法
2020/02/25 Python
详解Python流程控制语句
2020/10/28 Python
CSS3样式linear-gradient的使用实例
2017/01/16 HTML / CSS
H5 canvas实现贪吃蛇小游戏
2017/07/28 HTML / CSS
潘多拉意大利官方网上商城:网上选购PANDORA珠宝
2018/10/07 全球购物
给老婆的保证书范文
2014/04/28 职场文书
建设工地安全标语
2014/06/07 职场文书
励志演讲稿500字
2014/08/21 职场文书
授权收款委托书
2014/09/23 职场文书
教师辞职信范文
2015/02/28 职场文书
个人廉政承诺书
2015/04/28 职场文书
新人入职感言
2015/07/31 职场文书
培训感想范文
2015/08/07 职场文书
小学生组织委员竞选稿
2015/11/21 职场文书
为什么MySQL分页用limit会越来越慢
2021/07/25 MySQL
vscode中使用npm安装babel的方法
2021/08/02 Javascript