Element UI DatePicker 监听年月切换按钮并获取变更

需求:

在每切换一次年月时调用接口获取数据,传参为当前切换成的年月。

 需要监听DatePicker是否显示,用input获得焦点时触发的focus事件(element自带)。

并绑定4个切换按钮的click事件。

html:

              <el-date-picker
                v-model="datesvalue"
                type="dates"
                placeholder="选择工作日"
                :clearable="false"
                value-format='yyyy-MM-dd'
                @change="changeDate2($event)"
                :editable="false"
                class="datepicker1"
                @focus="isShow($event)"
              >
              </el-date-picker>

js:

    // 获取焦点 展示日期
    async isShow (e) {
      await this.$nextTick()
      this.monthChange()
      document.querySelectorAll("[aria-label='下个月'],[aria-label='上个月'],[aria-label='后一年'],[aria-label='前一年']")
        .forEach(item => item.addEventListener('click', () => {
          this.monthChange()
        }))
    },
    // 切换年月后重新调接口
    async monthChange () {
      let year, month
      // 获取年月
      year = document.querySelectorAll('.el-date-picker__header-label')[0].innerHTML.slice(0, 4)
      month = document.querySelectorAll('.el-date-picker__header-label')[1].innerHTML.slice(0, -1)
      if (Number(month) < 10) {
        // 10月之前都需要补0
        month = '0' + month;
      }
      this.datesYearMonth = year + '-' + month
      const { data } = await getWorkDay({
        month: this.datesYearMonth
      })
      if (data) {
        if (data.code === 200) {
          this.datesvalue = data.data
        }
      }
    },

参考:element-ui DatePicker 年、月 选择改变时获取当前的年月_lingwueryao的博客-CSDN博客_element日期选择控件切换月份时触发方法

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值