需要从 onItemClick 事件中找出 Webix 数据表单元格的内容
Posted
技术标签:
【中文标题】需要从 onItemClick 事件中找出 Webix 数据表单元格的内容【英文标题】:Need to find out content of Webix datatable cell from onItemClick event 【发布时间】:2018-03-15 12:29:30 【问题描述】:我的两个 Webix 数据表列在下面的单元格中有不同文本的按钮(定义为模板)。我的要求是在单击按钮时根据按钮文本执行一些操作。
为了简单起见,到目前为止,我正在显示一条警报消息,该消息在 onItemClick:function(e, id, node) 的帮助下将行和列交叉信息显示到其中。
我在这里对我的问题做了一个 sn-p:https://webix.com/snippet/06bd7631 标题为“注释”和“原因”的最后两列分别具有带有文本“display_msg_1”和“display_msg_2”的按钮。 单击它们时,我需要在警报消息中显示此相应的按钮文本。此外,如果除了单击按钮之外的任何其他单元格(这是最终目的),onItemClick 事件也不应该起作用。当前,单击任何单元格时都会发出警报。
请帮助我在这种情况下如何获取按钮文本。
谢谢。
【问题讨论】:
【参考方案1】:您可以为特定元素定义点击处理程序,而不是将 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'>
如您所见,现在每个按钮都有唯一的 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")
【讨论】:
以上是关于需要从 onItemClick 事件中找出 Webix 数据表单元格的内容的主要内容,如果未能解决你的问题,请参考以下文章
Android ListView onItemClick Not Work
RecyclerView onItemClick button和布局都有单击事件时的处理方式
ListView的OnItemClick无法响应以及子Item控件的事件处理。
OnItemClick 如何从列表视图中获取单击项目的文本值