【问题标题】:Dynamically pre-select row using DT in shiny在闪亮中使用 DT 动态预选行
【发布时间】:2017-04-23 09:24:33
【问题描述】:

我尝试使用 DT 动态预选闪亮的行并看到这个问题/答案:Pre-select rows of a dynamic DT in shiny 但是,我确实需要带有智能列过滤器的 DT 的“本机”外观。

这是我的代码:

library(shiny)
library(DT)

shinyApp(
    ui=shinyUI(
        fixedPage(
            radioButtons('selectedRows',
                         'select a row',
                         c(
                         "row one"="1",
                         "row two"="2")),
            DT::dataTableOutput('myTable')
        )
    )
,

server=shinyServer(function(input, output) {

    selRows <- reactiveValues(row=c())

    observe({
        validate(need(input$selectedRows, message=FALSE)) 
        selRows$row <- as.numeric(input$selectedRows)
    })

    output$myTable <- DT::renderDataTable ({
                                             mtcars[,1:5]
                                          },server=T,
                                            rownames = T,
                                            filter = "top",
                                            selection = list(mode='multiple',
                                                             selected = selRows$row))

    })
) 

谢谢!

【问题讨论】:

  • 当您说“动态预选”时,您的意思是“从另一个输入中选择”吗?或者这是一个关于使用特定选择初始化表格的问题?
  • 感谢您的评论。我的意思是“从另一个输入中选择”,如上例中的 input$selectedRows。当我给 selRows$row 一个固定值时,例如1 表已正确初始化,预选了第 1 行。

标签: r shiny dt


【解决方案1】:

它写在另一篇文章中以将其包装在datatable() 中然后它可以工作:)

output$myTable <- DT::renderDataTable ({
  datatable(
    mtcars[,1:5],
    rownames = T,
    filter = "top",
    selection = list(mode='multiple',
                     selected = selRows$row)  
  )
})

【讨论】:

    猜你喜欢
    • 2017-06-23
    • 1970-01-01
    • 2020-06-09
    • 2017-10-03
    • 2018-09-07
    • 1970-01-01
    • 2016-10-25
    • 2020-09-18
    • 1970-01-01
    相关资源
    最近更新 更多