【发布时间】:2019-07-21 06:45:00
【问题描述】:
在可编辑的 DT 中按 TAB 后编辑下一个单元格是否有技巧?
这将有助于更快地编辑整行。
下面是可编辑 DT 的基本示例。
library(shiny)
library(DT)
ui <- fluidPage(
DT::dataTableOutput('tbl1'),
verbatimTextOutput("print")
)
server <- function(input, output, session) {
data <- reactiveValues(x = iris[1:10,1:4])
output$tbl1 <- DT::renderDataTable({
DT::datatable(data = isolate(data$x), editable = TRUE, rownames = FALSE)
})
proxy_tbl1 <- dataTableProxy("tbl1")
observeEvent(input$tbl1_cell_edit, {
info = input$tbl1_cell_edit
i = info$row
j = info$col + 1
v = info$value
data$x[i, j] <- DT::coerceValue(v, data$x[i, j])
replaceData(proxy_tbl1, data$x, resetPaging = FALSE, rownames = FALSE)
})
output$print <- renderPrint({
print(data$x)
})
}
shinyApp(ui, server)
【问题讨论】:
-
听起来是个好主意。您可以向github.com/rstudio/DT/issues 提出功能请求。谢谢!
-
你不觉得这和PR #509有关吗?
标签: javascript r shiny datatables dt