代码之家  ›  专栏  ›  技术社区  ›  A.G.Progm.Enthusiast

需要从onItemClick事件中找出Webix datatable单元格的内容

  •  0
  • A.G.Progm.Enthusiast  · 技术社区  · 8 年前

    我的两个Webix datatable列在下面的单元格中有不同文本的按钮(定义为模板)。我的要求是在单击按钮时根据按钮文本执行一些操作。

    为了保持tahings的简单性,到目前为止,我正在显示一条警报消息,该消息通过onItemClick:function(e,id,node)的帮助将行和列交叉点信息显示到其中。

    我在这里提出了我的问题: https://webix.com/snippet/06bd7631

    标题为“Comment”和“Reason”的最后两列分别有文本为“display\u msg\u 1”和“display\u msg\u 2”的按钮。 单击时,我需要在警报消息中显示相应的按钮文本。此外,如果单击按钮之外的任何其他单元格(这是最终目的),onItemClick事件也不应工作。当前,单击任何单元格时都会发出警报。

    请帮助我如何在这种情况下获得按钮文本。

    谢谢

    1 回复  |  直到 8 年前
        1
  •  2
  •   Aquatic    8 年前

    您可以为特定元素定义单击处理程序,而不是将onItemClick处理程序附加到整个组件

    检查 https://webix.com/snippet/6c28d3c7

    在这里,我更改了html按钮的代码,如next

    <input type='button' class='btn1' value='display_msg_1' align='center'>
    <input type='button' class='btn2' value='display_msg_2' align='center'>
    

    之后,可以在组件的配置中使用onClick选项将处理程序映射到唯一的CSS类

    onClick:{                         
        btn1:function(e, id, node){
            alert("button clicked row ="+id.row + " |col = "+id.column);
        },
        btn2:function(e, id, node){
            alert("message 2")
        }
    } 
    
    推荐文章