【发布时间】:2021-01-16 13:01:07
【问题描述】:
我正在开发一个 Shiny 应用程序,并且正在使用 renderDataTable 向用户显示数据框。现在,用户需要点击表格的一行来提取关于该行的附加信息。同时,我将数据表设置为“行”可编辑。这确实造成了一些问题。为了启动该行的编辑模式,需要双击该行,但多次单击会切换该行的选中状态。
有没有一种方法可以启动行编辑而无需双击或在存在双击时禁用行选择状态?
编辑:这是我对 DT 的调用:
output$image_list = DT::renderDataTable({
if(!('data.frame' %in% class(values$images))) {
return(NULL)
}
datatable(values$images,
rowname=FALSE,
options=list(columnDefs = list(list(visible=FALSE, targets=c(0, 1, 3, 6)))),
colnames=c('ID', 'Full File Name', 'Filename', 'Directory', 'Range Scale', 'Heading', 'Status'),
selection = 'single',
editable = list(target='row', disable = list(columns=c(0, 1, 2, 3, 6)))
) %>%
formatStyle('Status', target='row', backgroundColor = styleEqual(c('Incomplete', 'Complete'), c('#FF9999', '#99FF99')))
})
版本信息
Tool | Version
-----|--------
R | 4.0
Shiny| 1.5.0
DT | 0.15
【问题讨论】:
-
没有细节很难理解。如何将点击侦听器附加到行?你不能只把它附加到一列吗?
标签: r shiny datatables dt