我在knockout中定义了一个小部件,如下面的HTML所示:
readLoop
正在渲染此小部件,如下图所示。
现在没有处理编辑图标的点击事件(仅用于显示目的)。并且我不允许更改小部件的代码。
那么有没有其他方法可以制作这个铅笔图标<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>
并处理我页面中的点击事件?
答案 0 :(得分:1)
我猜你总是可以附加一个标准的点击处理程序
$(".withEdit").click(function () {
var employee = ko.dataFor(this);
// do whatever you like with the employee observable
});
当使用淘汰赛时,我总是不想像这样使用jQuery并使用淘汰赛方法,但是既然你提到你不能改变现有代码,那么这可能就是选择