Changer la couleur de fond d'une ligne spécifique dans slickgrid?
est-il possible de modifier la couleur de fond d'une ligne spécifique dans slickgrid table tout en laissant l'autre comme il est ??? je suis en utilisant
for ( var i = 0; i < grid.length; i++) {
rowIndex[i] = {
price : "editable-col",
qty : "editable-col",
ccy : "buy-row",
side : "buy-col",
symbol : "buy-row",
enable : "buy-row"
};
}
grid.setCellCssStyles("", rowIndex);
où "modifiable-col" , "acheter-ligne" & "buy-col" sont les classes CSS contenant la couleur de la définition des propriétés de l'arrière-plan/premier plan etc. chaque fois que je veux modifier la couleur de fond d'une ligne spécifique , j'ai changer de couleur de l'ensemble de la grille(par boucle à travers la grille de la longueur) , ou si je l'ai mis de la classe pour une ligne spécifique par exemple
rowIndex[5] = {
price : "editable-col",
qty : "editable-col",
ccy : "buy-row",
side : "buy-col",
symbol : "buy-row",
enable : "buy-row"
};
grid.setCellCssStyles("", rowIndex);
il définit la classe css pour la ligne de votre choix, mais clair, toutes les propriétés css pour les autres lignes , pour éviter cela, j'ai besoin de réinitialiser les classes css pour les autres lignes, qui est, je pense, pas bon en termes de performances et de temps lorsque vous avez des milliers de lignes. je veux juste savoir est-il une meilleure façon de le faire sans toucher les autres lignes. ?? toute aide sera très appréciée.
OriginalL'auteur Omar | 2013-11-10
Vous devez vous connecter pour publier un commentaire.
En supposant que vous êtes en utilisant
Slick.Data.DataView
, vous pouvez modifier lagetItemMetadata
méthode d'ajouter dynamiquement des classes à la ligne contenant l'élément. Vous pouvez alors simplement le programme d'installation de votre grille pour modifier la ligne de style sur la base de la valeur à l'intérieur de la ligne. En supposant que votreSlick.Data.DataView
instance est appeléedataView
:Cela vous permettra d'ajouter dynamiquement le "buy-ligne" classe à la ligne. Vous pouvez changer la fonction de plusieurs conditions pour les différentes classes, rappelez-vous que les classes CSS pour chaque ligne sera conditionnelle basée sur la ligne des propriétés de l'objet. Le
ret.cssClasses
est la clé ici. C'est la chaîne qui va obtenir la sortie de la ligne HTML:<div class="[ret.cssClasses]">
.Vous pouvez maintenant faire quelque chose de ce genre pour modifier une ligne, de classes:
OriginalL'auteur idbehold
Oui, une façon est de simplement utiliser jQuery:
Mise à jour
Que la persistance de surbrillance vous avez besoin pour mettre en œuvre les getItemMetadata fonction. Il peut être fait comme ceci:
html
css
javascript
a un problème avec le groupement de
OriginalL'auteur llundin