2017-07-24 125 views
1

我是非常新的淘汰赛。 我有一个问题,我如何使用if/else与Knockout。如果其他条件与淘汰赛

例如像这样

<ul class="list-group" data-bind="foreach: users"> 
    <li class="list-group-item" data-bind="click : setasUser"> 
     <i class="fa fa-circle text-success"></i> <span data-bind="text: name"></span> 
    </li> 
</ul> 

我想有一个非clikable项目,如果username == x

我怎样才能做到这一点?

+0

检查出[如果结合(http://knockoutjs.com/documentation/if-binding .html) – JNevill

+0

你应该检查'enable'绑定http://knockoutjs.com/documentation/enable-binding.html – gkb

回答

2

不幸的是淘汰赛没有其他的。但它确实有一个if绑定和一个ifnot绑定。

这里是一个小提琴。 http://jsfiddle.net/LkqTU/35843/

<ul class="list-group" data-bind="foreach: users"> 
<!-- ko ifnot: username() === 'x' --> 
    <li class="list-group-item" data-bind="click : $parent.setasUser"> 
     <i class="fa fa-circle text-success"></i> <span data-bind="text: name"></span> 
    </li> 
    <!-- /ko --> 
    <!-- ko if: username() === 'x' --> 
    <li class="list-group-item" data-bind="text: name"> </li> 
    <!-- /ko --> 
</ul> 
0

只要你可以设置点击事件函数即可根据您的情况类似下面

<ul class="list-group" data-bind="foreach: users"> 
    <li class="list-group-item" data-bind="click : username !== x ? setasUser: null"> 
     <i class="fa fa-circle text-success"></i> <span data-bind="text: name"></span> 
    </li> 
</ul>