我将单击事件绑定到列表中的每个列表项:
<ul class="modal-subject-list" data-bind="foreach: filteredSubjects">
<li data-bind="click: $parent.pickSubject, css: {alreadyAddedBackground: hasBeenAdded}">
<!-- Lots of code here -->
</li>
</ul>
click:
如果“hasBeenAdded”解析为真,我想禁用绑定。我知道一些凌乱的方法来照顾它:
- 有两个列表项,一个用于
if: hasBeenAdded
,另一个用于if: !hasBeenAdded
。这远非 DRY - 使用 javascript 处理此检查并单独保留视图 - 我不喜欢这样,因为正在为应该基本上禁用的列表项生成不必要的标记。
有没有办法注册“clickIf”绑定?