基于上一行修改R DT::datatable中的单元格
我有一个闪亮的应用程序,我想根据前一行中同一单元格的值修改显示的数据和/或单元格的属性 在我的代码中,我已经根据rowCallback中数据[0]的值格式化了整行基于上一行修改R DT::datatable中的单元格,r,datatable,callback,shiny,R,Datatable,Callback,Shiny,我有一个闪亮的应用程序,我想根据前一行中同一单元格的值修改显示的数据和/或单元格的属性 在我的代码中,我已经根据rowCallback中数据[0]的值格式化了整行 output$result <- DT::renderDataTable(tabledata(), class = c('compact'), rownames = FALSE, server = FALSE, escape = TRUE, extensions = options = l
output$result <- DT::renderDataTable(tabledata(),
class = c('compact'),
rownames = FALSE,
server = FALSE,
escape = TRUE,
extensions = options = list(
rowCallback=JS("
function (row, data, index) {
var string=data[1], substring = 'sub total';
if (data[0]=='Grand Total') {
$(row).css('background-color', '#DEDEDE'), $(row).css('font-weight', 'bold') ;
}
else if (data[0].includes('sub total')) {
$(row).css('font-weight', 'bold');
}
}"
)
)
)
output$result所以我改变了策略并使用了下面的drawCallback调用
drawCallback=JS(" function ( settings ) {
var api = this.api();
var mydata = api.rows( {page:'current'} ).data();
var last=null;
api.column(0,{page:'current'}).data().each( function ( value, index ) {
if ( value == last) {
mydata[index][0] = ''
api.rows({ page: 'current' }).invalidate();
}
last=value;
});
}"
)
不确定。。但是你可以尝试得到某个值的索引。。然后把这个索引值-1设置为attributeHi@zwep。。。。我一直在反复研究传递给rowCallback的行的索引,但不能完全得到它。你有没有可能扩展这个答案?你最初的问题正是我想要的,但我不完全确定这是如何解决的。