gpt4 book ai didi

javascript - SlickGrid 在事件 onCellChange 上设置行背景颜色

转载 作者:行者123 更新时间:2023-11-28 12:07:39 24 4
gpt4 key购买 nike

我使用下面的代码为行设置背景颜色,基于更改的值但它不起作用,行颜色没有改变:

        MyGrid.onCellChange.subscribe(function (e, args) 
{
var data = Grid.getData();

if(data[args.row].IsDeleted == true)
{
args.row.cssClasses += 'MyBlueColor'; //Set Css Class
}
}

<style type="text/css">
.MyBlueColor
{
background-color: blue;
}
</style>

最佳答案

args.row 是行索引,不是行本身

check out what is passed as the event args when onCellChange is triggered

要根据数据项更改行的 cssClass,您需要实现自定义 getItemMetadata函数返回该行的自定义元数据。在 slick.groupitemmetadataprovider.js 中查看这是如何实现的

作为一个hack 只是为了确保它有效,您可以将 slick.dataview.js 中的 getItemMetadata 函数替换为您自己的函数看起来像这样的自定义函数:

function getItemMetadata(i) {
var item = rows[i];
if (item === undefined) {
return null;
}
if (item.IsDeleted) {
return {
cssClasses: 'MyBlueColor'
};
}

return null;
}

这显然会破坏原始的列定义,但是一旦您了解了 getRowMetadata 函数的工作原理,您应该能够创建自己的元数据提供程序,类似于 slick.groupitemmetadataprovider.js 甚至为每一列返回自定义元数据!

关于javascript - SlickGrid 在事件 onCellChange 上设置行背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19642369/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com