我正在创建一个网格,其中值为“Y”的单元格应为绿色,值为“N”的单元格应为红色。为此,我已经为单元格分配了一个cssClass“YN”,并且我创建了一个包含单元格值的属性。它看起来像这样:
CSS:
.slick-cell.YN[val="N"]{...
网格单元格:
<div class="slick-cell l10 r10 YN" val="N">N</div>
这很好用但是只要我滚动或排序,属性就会被破坏,并且在重新创建元素时不会重新出现。
我需要一种获取单元格值的方法,并在每次创建元素时创建属性。也许有一种比创建属性更简单的方法? CSS可以直接引用div html吗?非常感激任何的帮助。
PS:slickgrid太棒了!答案 0 :(得分:0)
每当网格滚动,排序或更改页面时,网格DOM都会重新创建。因此,您应用的所有属性都将丢失......您必须再次应用它们。
因此您需要在onscroll
和onsort
函数中调用您的代码..
grid.onScroll.subscribe(function(e) {
grid.invalidate();
grid.render();
yourCodeToStyleAgain();
});
grid.onSort.subscribe(function(e) {
grid.invalidate();
grid.render();
yourCodeToStyleAgain();
});