Comment ajouter une classe dynamique dans knockoutjs?
Disons que j'ai,
<span class="cls1 cls2" data-bind="title: title" ></span>
Je veux ajouter une autre classe via objet JSON,
{ title: 'a', clas: 'cls3' }
Ce travail,
<span class="cls1 cls2" data-bind="attr:{title: title,'class': 'cls1 cls2'+clas}" ></span>
Mais le problème est qu'il va ajouter deux attributs de classe. J'ai besoin de la lc1 et cls2 classe sur le début. Mais besoin cls3 classe après un certain événement.
- Pouvez-vous fournir un violon qui illustre le cas d'utilisation?
- Je ne vois pas de problème avec votre exemple
Vous devez vous connecter pour publier un commentaire.
Vous devez utiliser
css
de liaison au lieu deattr
pour cela. Lire plus à ce sujet dans la documentation: http://knockoutjs.com/documentation/css-binding.html.Vous code ressemblera à ceci:
Voici de travail violon: http://jsfiddle.net/vyshniakov/gKaRF/
À l'aide de plusieurs classes:
(true == true)
et(!true == false)
?{'active-class': isSelected}
que tu veux dire. J'ai de l'espoir.Vous pouvez utiliser le
css
de liaison pour ce faire:Cela ajoute de la valeur de votre "clas" de la propriété à la classe en cours de collecte de l'élément
css: 'size' + Array.length
class
de liaison. Si vous voulez ajouter "classe" comme le nom de l'un, de mettre entre apostrophes comme'class'
.