37

ブートストラップ css クラスを if 条件付きのスパンに設定したい (バインドされた値まで)。リストにisApprovedフィールドがあります。アクティブな場合は「label-success」クラス、非アクティブな場合は「label-important」クラスのフィールドを表示したい

この行を追加しましたが、常に最初のクラスを取っています

data-bind="
    text: isApproved,
    css: isApproved = 'true' ? 'label label-important' : 'label label-important'"

HTMLで可能ですか、それともVMに計算フィールドを追加する必要がありますか?

4

2 に答える 2

62

私の理解が正しければ、これがあなたが探しているバインディングです。

 data-bind="text: isApproved, css: {
    'label' :  true,
    'label-success' :  isApproved(),
    'label-important':  !isApproved()
 }"

お役に立てば幸いです。

于 2013-07-31T12:36:57.780 に答える
39

三項演算子の例

<span class="label"
    data-bind="text: isApproved,
               css: isApproved() == true ? 'label-success' : 'label-important'">
</span>
于 2013-07-31T12:39:24.410 に答える