Kendo ui Kendo Mobile MVVM ListView上的单击绑定<;UL>;和详细信息按钮

Kendo ui Kendo Mobile MVVM ListView上的单击绑定<;UL>;和详细信息按钮,kendo-ui,Kendo Ui,试着做一些简单的事情。Kendo UI MobileListView,在列表项模板中的UL(MVVM)和detailbutton上单击绑定。click绑定只需在视图模型中调用一个click处理程序函数,这是可以预期的。detailbutton应该会打开一个操作表——这不符合预期。发生的情况是单击处理程序触发 如果我可以将“发送者”标识为详细信息按钮,我应该能够简单地从处理程序返回,而不做任何事情,并弹出操作表 有几个问题: 1) 假设我的方法是正确的,那么识别单击按钮来源的最可靠方法是什么 2)

试着做一些简单的事情。Kendo UI Mobile
ListView
,在列表项模板中的
UL
(MVVM)和
detailbutton
上单击绑定。
click
绑定只需在视图模型中调用一个click处理程序函数,这是可以预期的。
detailbutton
应该会打开一个
操作表
——这不符合预期。发生的情况是单击处理程序触发

如果我可以将“发送者”标识为详细信息按钮,我应该能够简单地从处理程序
返回
,而不做任何事情,并弹出操作表

有几个问题:

1) 假设我的方法是正确的,那么识别单击按钮来源的最可靠方法是什么

2) 如果有更好的方法,那是什么


我整理了一把小提琴。查看:

您可以添加jQuery处理程序来停止冒泡事件,如我链接的“副本”中所述,或者您可以执行类似操作来查看单击是否来自详细信息按钮:

    if(e.target.hasClass("km-detail")
      || e.target.parent().hasClass("km-detail")) {
        return false;
    }

问题是来自锚定标记的点击事件在JavaScript中冒泡。标记为另一个应该有帮助的问题的副本。这也是一个HTML/JS的东西,而不是剑道的具体问题。可能重复的我不认为这是一个相当重复。它特别适用于剑道ui,因为我可以通过在
    单击处理程序中处理两次单击来让它工作,如果单击的是detailbutton,则什么也不做。这就是问题1)的内容。我如何才能可靠地确定detailbutton是目标呢?按照您的建议检查类应该可以工作,但感觉就像我想出的一样像一个黑客,即检查“title”属性:
    if(e.target.context.parentElement.title==“more…”)至于防止冒泡,我先试了一下,但没有成功。一旦有机会,我会再试一次。@user1843640您有没有找到更好的方法来处理此功能?我有完全相同的问题,但我发现自己不得不使用jQuery作为公认的答案suggests@Roark从那以后,我离开了那个项目,不再使用剑道UI,但我不记得曾经找到过更优雅的方式来实现这一点。我在剑道用户界面上遇到了一些类似的挫折,但现在已经有几年了,所以产品可能已经改进了。