我的指令停止与另一个结合使用.. Angular.js

My directive stops working combined with another.. Angular.js

我有一个动态编辑字段 "click-to-edit" 的指令。如果我点击一个项目,我可以毫无问题地编辑它。

<span ng-click="ignoreClick($event);" >
  <a href='' click-to-edit item="faq" ng-model='faq.pregunta'
     typeinput='textarea'>{{faq.pregunta}}
  </a>

我有一个过滤器,当找到一个词时会突出显示它,这个过滤器叫做 "highligth"。如果我添加行

ng-bind-html="faq.pregunta | highlight:search.pregunta"

我无法点击编辑字段。

但过滤器适合我突出显示。我需要不要错过编辑字段的功能,而不会在突出显示文本时损坏它。我该如何解决这个问题?

https://jsfiddle.net/jv5o6s8y/

ng-bind-html 的问题在于它替换了指令的模板,这就是为什么您无法在指令内部单击的原因(带有切换的原始 ng-click 将不起作用),它不起作用t 包含初始模板。 您应该突出显示指令模板内某处的文本,例如:

<div class="hover-text-field" ng-show="!editState" ng-click="toggle()" ng-bind-html="model | highlight:search.pregunta"></div>

,检查此工作 jsfiddle