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

时间:2021-05-28

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

需求场景如下:

  • 指定起止日期,后选的将会受到先选的限制
  • 不同的日期选择器,不过也存在关联关系
  • 实现方法不难,利用了 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;}

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

    声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

    相关文章