element UI日期选择器开始时间不能大于结束时间

<!DOCTYPE html>
<html>

<head>
  <meta charset="UTF-8">
  <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
  <link href="https://cdn.staticfile.org/quill/1.3.6/quill.snow.css" rel="stylesheet">
</head>

<body>
  <div id="app">
    <el-date-picker v-model="startTime" size="small" type="date" placeholder="开始时间"
      :picker-options="pickerOptionsStart">
    </el-date-picker>
    <el-date-picker size="small" v-model="endTime" type="date" placeholder="结束时间" :picker-options="pickerOptionsEnd">
  </div>
</body>
<script src="https://cdn.staticfile.org/quill/1.3.6/quill.js"></script>
<!-- <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script> -->
<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
<script>
  new Vue({
    el: '#app',
    data() {
      return {
        startTime: '',
        endTime: '',
        // 开始结束日期限制
        pickerOptionsStart: {
          disabledDate: (time) => {
            if (this.endTime) {
              return (
                time.getTime() >= new Date(this.endTime).getTime()
              );
            }
          }
        },
        // 结束日期限制
        pickerOptionsEnd: {
          disabledDate: (time) => {
            if (this.startTime) {
              return (
                time.getTime() <= new Date(this.startTime).getTime()
              );
            }
          }
        }
      }
    },
    methods: {
    }
  })
</script>

</html>
<script>
</script>
<style>

</style>

  • 7
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!对于ele日期选择器禁用开始时间结束时间大的小时,您可以使用以下方法来实现: 1. 首先,您需要获取开始时间结束时间的小时数。 2. 然后,比较开始时间结束时间的小时数,如果开始时间大于结束时间,即开始时间的小时数大于结束时间的小时数,那么您可以禁用这些小时。 3. 在ele日期选择器的配置中,使用 "disabled-hours" 属性来禁用指定的小时。您可以将开始时间大于结束时间的小时数传递给该属性。 以下是一个示例代码片段,演示如何在ele日期选择器中禁用开始时间结束时间大的小时: ```javascript <template> <el-date-picker v-model="date" type="datetime" :picker-options="pickerOptions" ></el-date-picker> </template> <script> export default { data() { return { date: null, pickerOptions: { disabledHours: this.getDisabledHours } }; }, methods: { getDisabledHours() { if (!this.date) { return []; } const startHour = this.date.getHours(); const endHour = this.dateEnd.getHours(); if (startHour > endHour) { // 禁用开始时间结束时间大的小时 return Array.from({ length: 24 }, (v, i) => i).slice(endHour + 1, startHour); } return []; } } }; </script> ``` 在上述示例中,我们使用了一个计算属性 `pickerOptions` 来配置ele日期选择器的选项。其中,`disabledHours` 函数用于返回要禁用的小时数数组。我们通过比较开始时间结束时间的小时数,来确定要禁用的小时范围。如果开始时间大于结束时间,我们通过 `slice` 方法从结束时间的下一个小时到开始时间的前一个小时来获取要禁用的小时数数组。 请注意,示例代码中的 `el-date-picker` 是基于Element UI库的一个组件。您可以根据自己的需求进行相应的调整和修改。 希望这能帮助到您!如有任何疑问,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值