繁体   English   中英

R Shiny DT-以编程方式输入搜索文本

[英]R Shiny DT - enter search text programmatically

是否可以通过代码输入搜索框文字? 必需的行为是:用户在textInput('search2', "Search 2")输入文本textInput('search2', "Search 2")并且此文本将在DT搜索框中复制并在DT上执行搜索。

library(shiny)
library(DT)
shinyApp(
  ui = fluidPage(
    textInput('search2', "Search 2"),
    DTOutput('dt')
  ),
  server = function(input, output, session) {
    output$dt = renderDT(iris)
  })

在此处输入图片说明

我不想用其他方式(目前正在做的事情)过滤DT数据-特别是我想使用DT的搜索框功能。

您可以创建DT的datatableProxy ,从而可以操作现有的DT实例。 使用功能updateSearch

library(shiny)
library(DT)    

shinyApp(
  ui = fluidPage(
    textInput('search2', "Search 2"),
    DTOutput('dt')
  ),
  server = function(input, output, session) {

    DTproxy <- dataTableProxy("dt")
    output$dt = renderDT(iris)

    observeEvent(input$search2, {
      updateSearch(DTproxy, keywords = list(global = input$search2, columns = NULL))
    })

  })

在此处输入图片说明

除了@shosaco他的答案:

通过添加以下CSS隐藏DataTable的搜索框:

.dataTables_filter {
visibility: hidden;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM