簡體   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