30

私が持っているとしましょう、

<span class="cls1 cls2" data-bind="title: title" ></span>

JSONオブジェクトを介して別のクラスを追加したいのですが、

{ title: 'a', clas: 'cls3' }

この作品は、

    <span class="cls1 cls2" data-bind="attr:{title: title,'class': 'cls1 cls2'+clas}" ></span>

ただし、問題は、2つのクラス属性が追加されることです。最初にcls1クラスとcls2クラスが必要です。ただし、何らかのイベントの後にcls3クラスが必要です。

4

3 に答える 3

47

cssこれの代わりにバインディングを使用する必要がありますattr。詳細については、ドキュメントをご覧ください:http: //knockoutjs.com/documentation/css-binding.html

コードは次のようになります。

<span class="cls1 cls2" data-bind="text: title, css: myClass" ></span>

ここに作業中のフィドルがあります:http://jsfiddle.net/vyshniakov/gKaRF/

于 2013-01-10T10:20:36.020 に答える
17

複数のクラスの使用:

<span
    class="yourClass"
    data-bind="css: { myClass: (true == true), theirClass: (!true == false), ourClass: true }"
>Thine Classes</span>
于 2014-06-18T18:45:35.350 に答える
10

cssバインディングを使用してこれを行うことができます。

<span class="cls1 cls3" data-bind="css: clas"/>

これにより、「clas」プロパティの値が要素の現在のクラスコレクションに追加されます

于 2013-01-10T10:19:09.910 に答える