0
下可以在所呈现的数据表列1和列3禁用过滤:如何变量传递给在选择目标renderDataTable(闪亮)
output$datatbl <- DT::renderDataTable(
dt$df, rownames = FALSE,
filter = 'top',
options = list(autoWidth = TRUE,
columnDefs = list(list(targets = c(1,3), searchable = FALSE))))
不过,我有不同的数据集上传到我的应用程序,因此要禁用的搜索列将有所不同。我需要传递变量以更新options
中targets
的值。我尝试以下(内eval(substitute()
的expr
是捕捉它们的反应值列表DT $ datecolchoices发现列的索引):
output$datatbl <- DT::renderDataTable(
dt$df, rownames = FALSE,
filter = 'top',
options = list(autoWidth = TRUE,
columnDefs = list(list(targets = eval(substitute(which(names(dt$df) %in% dt$datecolchoices))), searchable = FALSE))))
然而,似乎以上不及格的价值正如我所期望的那样,这个变量为targets
,因为过滤器的列未被禁用。我的代码有什么问题吗?谢谢!
我想这是因为'的eval(替代())'不能在功能环境调用。我想知道如何在这里嵌入一个函数来改变选项中'targets'的值。谢谢! –