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 相关文章推荐
wordpress之js库集合研究介绍
Aug 17 Javascript
JavaScript 异步调用框架 (Part 6 - 实例 &amp; 模式)
Aug 04 Javascript
前端开发部分总结[兼容性、DOM操作、跨域等](持续更新)
Mar 04 Javascript
js 数组克隆方法 小结
Mar 20 Javascript
避免回车键导致的页面无意义刷新的解决方法
Apr 12 Javascript
JS target与currentTarget区别说明
Aug 28 Javascript
取得元素的左和上偏移量的方法
Sep 17 Javascript
jQuery中html()方法用法实例
Dec 25 Javascript
JavaScript制作windows经典扫雷小游戏
Mar 31 Javascript
Jquery的Ajax技术使用方法
Jan 21 jQuery
vue 弹窗时 监听手机返回键关闭弹窗功能(页面不跳转)
May 10 Javascript
微信小程序图片自适应实现解析
Jan 21 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
通过文字传递创建的图形按钮
2006/10/09 PHP
解析PHP无限级分类方法及代码
2013/06/21 PHP
php实现的替换敏感字符串类实例
2014/09/22 PHP
PHP 实现代码复用的一个方法 traits新特性
2015/02/22 PHP
基于逻辑运算的简单权限系统(实现) JS 版
2007/03/24 Javascript
复制本贴标题和地址的js代码
2008/07/01 Javascript
jsp+javascript打造级连菜单的实例代码
2013/06/14 Javascript
JavaScript创建对象的写法
2013/08/29 Javascript
通过action传过来的值在option获取进行验证的方法
2013/11/14 Javascript
纯js写的分页表格数据为json串
2014/02/18 Javascript
jQuery实现在下拉列表选择时获取json数据的方法
2015/04/16 Javascript
jquery UI Datepicker时间控件的使用方法(加强版)
2015/11/07 Javascript
js判断当前页面用什么浏览器打开的方法
2016/01/06 Javascript
详解vue 模拟后台数据(加载本地json文件)调试
2017/08/25 Javascript
浅谈js基础数据类型和引用类型,深浅拷贝问题,以及内存分配问题
2017/09/02 Javascript
js如何获取访问IP、地区、当前操作浏览器
2019/07/23 Javascript
LayUI数据接口返回实体封装的例子
2019/09/12 Javascript
vue 路由懒加载中给 Webpack Chunks 命名的方法
2020/04/24 Javascript
Vue父子组件传值的一些坑
2020/09/16 Javascript
使用Python的判断语句模拟三目运算
2015/04/24 Python
Python 的内置字符串方法小结
2016/03/15 Python
Python使用QQ邮箱发送Email的方法实例
2017/02/09 Python
tensorflow学习笔记之简单的神经网络训练和测试
2018/04/15 Python
使用Python对微信好友进行数据分析
2018/06/27 Python
pandas重新生成索引的方法
2018/11/06 Python
Python3 使用cookiejar管理cookie的方法
2018/12/28 Python
基于python实现蓝牙通信代码实例
2019/11/19 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
2020/06/18 Python
tensorflow之读取jpg图像长和宽实例
2020/06/18 Python
python如何利用paramiko执行服务器命令
2020/11/07 Python
经理秘书岗位职责
2013/11/14 职场文书
暑假安全教育广播稿
2014/09/10 职场文书
2015元旦主持词开场白和结束语
2014/12/14 职场文书
七年级上册语文教学计划
2015/01/22 职场文书
学生会工作感言
2015/08/07 职场文书
redis哨兵常用命令和监控示例详解
2021/05/27 Redis