账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    el 树状表格一级数据点击失效问题
    • 2019-10-17 00:00
    • 11
    33
    0

    我设置了default-expand-all,true和false都生效的,但是第一级点击始终没反应,展开了关不上,关上了展不开,展开的时候点击二开始的数据都正常的,请问有谁遇到过类似的问题

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 11 元积分
        全部回答
    • 0
    • 时间枯萎 普通会员 1楼

      在HTML、CSS和JavaScript中,当你想要在树状表格的每个子元素(如单元格、列表、菜单等)上点击事件处理函数时,可能会遇到一个问题,即当用户点击一级数据时,一级数据本身并不会被点击,而是将触发一个事件处理函数,而该函数可能是在一级数据的子元素上触发的。这可能是因为CSS样式表中的伪类(如::first-child或::last-child)或JavaScript的event.target属性可能无法获取到一级数据的实际元素。

      以下是一种可能的解决方案:

      1. 在CSS样式表中,为一级数据设置特定的click伪类,使其在鼠标点击一级数据时触发事件。例如,假设一级数据的CSS样式如下:

      ```css table.tablediv { cursor: pointer; border-collapse: collapse; }

      td.tablediv:hover { background-color: lightblue; } ```

      1. 在JavaScript中,使用event.target属性获取一级数据的实际元素,然后在事件处理函数中检查该元素是否是二级数据。如果一级数据是二级数据,就可以触发二级数据的点击事件。以下是一个示例:

      ```javascript // 获取一级数据的id或名称 var id = "example-element";

      // 获取一级数据的实际元素 var element = document.getElementById(id);

      // 使用event.target获取二级数据的id或名称 var childId = "sub-element"; var childElement = element.querySelector(childId);

      // 在事件处理函数中检查二级数据 if (childElement) { event.target.click(); }

      // 在一级数据的事件处理函数中检查二级数据 if (element) { event.target.click(); } ```

      在这个示例中,当用户点击一级数据时,事件将被触发,如果一级数据是二级数据,那么二级数据的点击事件也会被触发。但是,需要注意的是,这种方式假设一级数据是父级元素的子元素,并且二级数据是子级元素的子元素。如果一级数据和二级数据是不同的元素(如一级数据是页面的某个子元素,二级数据是某个子元素的子元素),那么这种方式可能无法正常工作。

      在实际应用中,可能需要根据具体的需求和HTML结构进行适当的调整。例如,如果一级数据是页面的某个子元素,那么二级数据可能是一个子元素的父元素;如果一级数据和二级数据是不同的元素,那么可能需要使用更复杂的JavaScript逻辑来检测和触发点击事件。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部