在Knockout中覆盖小部件的功能

时间:2017-08-24 11:27:48

标签: knockout.js durandal

我在knockout中定义了一个小部件,如下面的HTML所示:

readLoop

正在渲染此小部件,如下图所示。

enter image description here

现在没有处理编辑图标的点击事件(仅用于显示目的)。并且我不允许更改小部件的代码。

那么有没有其他方法可以制作这个铅笔图标<div class="container"> <ul data-bind="fastForEach: employees"> <li class="item" data-bind="css: { 'noclose': !$parent.isCloseVisible, 'withEdit': $data.showEdit }"> <div> <i data-bind="click: $parent.onClick, visible: $parent.isCloseVisible" class="itemClose"></i> <span class="item" data-bind="text: $data[$parent.displayText]"></span> <span data-bind="if: $data.showEdit" class="withEdit"> <i class="list"></i> </span> </div> </li> </ul> </div> 并处理我页面中的点击事件?

1 个答案:

答案 0 :(得分:1)

我猜你总是可以附加一个标准的点击处理程序

$(".withEdit").click(function () {
    var employee = ko.dataFor(this);
    // do whatever you like with the employee observable
});

当使用淘汰赛时,我总是不想像这样使用jQuery并使用淘汰赛方法,但是既然你提到你不能改变现有代码,那么这可能就是选择