2017-08-24 31 views
0

我在敲除定义的部件如下所示HTML:覆盖部件的特征在淘汰赛

<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> 

该插件被呈现为示于下面的图像。

enter image description here

:现在为编辑图标处理没有click事件(也就是只为显示目的)。我不允许更改小部件的代码。

那么是否有任何替代方法来制作这个铅笔图标clickable并处理我的页面中的点击事件?

+0

您不允许更改代码?比你如何添加新功能?你必须添加一个'click:function(e){}'data-bind到'.withEdit'块... – user3297291

回答

1

我猜你总是可以连接标准单击处理

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

使用的淘汰赛,我总是不喜欢使用jQuery这样,使用基因敲除的方法,但是既然你提到你不能改变现有的代码,这可能是选项

+0

很好的答案,特别是在规定的情况下。 –