R-如何切换在闪亮的数据表中显示的页面



我可以使用回调参数(例如output$testTable <- DT::renderDataTable(iris, callback = JS('table.page(2).draw(false);'))但是如何根据用户输入来更改页面?使用dataTableProxy类似于selectRows吗?

这是如何做的。您需要创建一个自定义JS函数,然后像这样从服务器调用它(在此示例中,按钮将页面更改为随机页面):

library(shiny) 
library(DT)
shinyApp( 
  ui = fluidPage(
    mainPanel(DT::dataTableOutput("test"),
              actionButton("btn","Press me"),
              tags$script(HTML(
    "Shiny.addCustomMessageHandler('pager',function(page) {
      $('#'+'test').find('table').DataTable().page(page).draw(false);
    })"
                )))), 
  server = function(input, output,session) { 

    output$test <- DT::renderDataTable({
     mtcars
    })
    observeEvent(input$btn,{
      page <- sample(1:4,1)
      session$sendCustomMessage("pager",page-1)
    })    
  }
)

相关内容

  • 没有找到相关文章