我的两个Webix数据表列在下面的单元格中有不同文本的按钮(定义为模板)。我的要求是在点击按钮文本时根据按钮文本执行一些操作。
为了简化tahings,截至目前,我正在显示一条警告消息,该消息在onItemClick:function(e,id,node)的帮助下将行和列交叉信息显示在其中。
我在这里写了一个问题片段:https://webix.com/snippet/06bd7631
最后两列带标题"评论"和"原因"有文字的按钮" display_msg_1"和" display_msg_2"分别。
单击它们时,我需要在警告消息中显示相应的按钮文本。如果除了单击按钮之外的任何其他单元格,则onItemClick事件也不起作用,这是最终目的。目前,点击任何单元格时都会发出警报。
请帮助我如何在此方案中获取按钮文本。
感谢。
答案 0 :(得分:2)
您可以为特定元素
定义单击处理程序,而不是将onItemClick处理程序附加到整个组件检查https://webix.com/snippet/6c28d3c7
在这里,我更改了html按钮的代码,如下一个
<input type='button' class='btn1' value='display_msg_1' align='center'>
<input type='button' class='btn2' value='display_msg_2' align='center'>
如您所见,每个按钮现在都有唯一的CSS类名
之后,可以在组件的配置中使用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")
}
}