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'的值。謝謝! –