element-ui使用date-picker中unlink-panels踩坑

单面板时间范围选择器

实现方法,使用unlink-panels属性取消两个面板间的联动,用css设置display:none隐藏右面板。


这个有个bug,第一次选择没有问题,比如上一次选择的最大日期是2020年12月,下一次再选右按钮只能选择到2020年11月就会被禁用掉

解决方案:绑定focus,获取dom元素,绑定click事件,清除属性

@focus="focus"

focus() {

      // 去掉日期选择右上角下一月被禁用

      if(document.getElementsByClassName("el-picker-panel")[0]) {

        let butten = document.getElementsByClassName("el-picker-panel")[0]

                              .getElementsByClassName("is-left")[0]

                              .getElementsByClassName("el-icon-arrow-right")[0];

       butten.classList.remove("is-disabled");

       butten.removeAttribute("disabled");

       // 去掉日期选择右上角下一年 

       let nextYear = document.getElementsByClassName("el-picker-panel")[0]

                              .getElementsByClassName("is-left")[0]

                              .getElementsByClassName("el-icon-d-arrow-right")[0];

       nextYear.classList.remove("is-disabled");

       nextYear.removeAttribute("disabled");

      }

    }

方法比较笨,有别的解决方案,希望告知呦。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Element对象对应网页的 HTML 元素。每一个 HTML 元素,在 DOM 树上都会转化成一个Element...
    wit92阅读 4,474评论 0 0
  • Element节点对象对应网页的 HTML 元素。每一个 HTML 元素,在 DOM 树上都会转化成一个Eleme...
    oWSQo阅读 4,866评论 0 0
  • Element对象对应网页的HTML标签元素。每一个HTML标签元素,在DOM树上都会转化成一个Element节点...
    许先生__阅读 5,855评论 0 2
  • Element对象对应网页的HTML标签元素。每一个HTML标签元素,在DOM树上都会转化成一个Element节点...
    周花花啊阅读 4,758评论 0 0
  • 本文整理自《高级javascript程序设计》 DOM(文档对象模型)是针对HTML和XML文档的一个API(应用...
    SuperSnail阅读 3,744评论 0 1

友情链接更多精彩内容