Slickgrid 行删除线
Slickgrid row strikethrough
在 Slickgrid 中如何为一行应用删除线?
我尝试使用 'text-decoration' 样式,但样式不适用。我已尝试使用以下代码将样式应用于行
data.getItemMetadata = function (row) {
if (this[row].title == 'Task 5'){
return {
cssClasses: 'highlight'
};
}
return null;
}
CSS
.highlight {
text-decoration: line-through;
}
几件事:
1) 从您引用数据的方式来看,您将 JSON 对象直接用作数据。您可以这样做,但如果您想使用行元数据则不行。
2) 因此要访问 getItemMetadata
,您需要按照 example-4-model
使用 dataView,并添加:
dataView.getItemMetadata = function (row) {
var v = this.getItem(row);
if (v.title == 'Task 5'){
return {
cssClasses: 'highlight'
};
}
return null;
}
3) 即便如此(我测试了上面的代码,它确实添加了 class)行上的 class 也不会向列数据添加删除线。
这将:
.highlight > .slick-cell {
text-decoration: line-through;
}
您可以使用其他 css 技巧来获得您想要的结果,或者作为最后的手段,您可以添加列元数据属性而不是行。
最后,查看 my slickgrid repo,它是 MLeibman 分支上的当前最新分支,没有对其进行自定义(只是错误修复和小的增强)。修复了许多错误,并通过 jQuery 1.8+、2.x 和 3.x.
进行了全面测试
在 Slickgrid 中如何为一行应用删除线?
我尝试使用 'text-decoration' 样式,但样式不适用。我已尝试使用以下代码将样式应用于行
data.getItemMetadata = function (row) {
if (this[row].title == 'Task 5'){
return {
cssClasses: 'highlight'
};
}
return null;
}
CSS
.highlight {
text-decoration: line-through;
}
几件事:
1) 从您引用数据的方式来看,您将 JSON 对象直接用作数据。您可以这样做,但如果您想使用行元数据则不行。
2) 因此要访问 getItemMetadata
,您需要按照 example-4-model
使用 dataView,并添加:
dataView.getItemMetadata = function (row) {
var v = this.getItem(row);
if (v.title == 'Task 5'){
return {
cssClasses: 'highlight'
};
}
return null;
}
3) 即便如此(我测试了上面的代码,它确实添加了 class)行上的 class 也不会向列数据添加删除线。 这将:
.highlight > .slick-cell {
text-decoration: line-through;
}
您可以使用其他 css 技巧来获得您想要的结果,或者作为最后的手段,您可以添加列元数据属性而不是行。
最后,查看 my slickgrid repo,它是 MLeibman 分支上的当前最新分支,没有对其进行自定义(只是错误修复和小的增强)。修复了许多错误,并通过 jQuery 1.8+、2.x 和 3.x.
进行了全面测试