我已经搜索到任何地方,以了解如何添加一个类到一个特定的行在slickgrid。它似乎曾经是一个rowCssClasses属性,但现在已经不在了。对此的任何帮助将非常感谢。
更新:我使用getItemMetadata …找出它,所以在渲染之前,你必须这样做:
dataView.getItemMetadata = function (row) { if (this.getItem(row).compareThis > 1) { return { 'cssClasses': 'row-class' }; } };
这将把“row-class”注入到与if语句匹配的行中。看来,这个getItemMetadata函数不存在,直到你把它放在那里,并且slickGrid检查是否有任何东西。它很难弄清楚它的选择,但如果您在slick.grid.js文件中搜索getItemMetadata,您应该找到一些隐藏的宝藏!我希望这有助于某人!
如果有更好的方法,请让我知道。
解决方法
在较新版本的SlickGrid中,DataView提供了自己的getItemMetadata,以提供组标题和总计的格式。尽管如此,它很容易链接到你自己的实现。例如,
function row_Metadata(old_Metadata_provider) { return function(row) { var item = this.getItem(row),ret = old_Metadata_provider(row); if (item && item._dirty) { ret = ret || {}; ret.cssClasses = (ret.cssClasses || '') + ' dirty'; } return ret; }; } dataView.getItemMetadata = row_Metadata(dataView.getItemMetadata);