【问题标题】:Keep search value between tabs在选项卡之间保留搜索值
【发布时间】:2016-05-30 08:39:05
【问题描述】:

我有一个类似于这个的闪亮应用程序:http://shiny.rstudio.com/gallery/datatables-demo.html

我想在切换标签时保留在搜索栏中输入的值。如何做到这一点?我假设我必须访问库中的值(闪亮)。

【问题讨论】:

  • 如何在 UI 中创建 textInput,然后在 DT:data.table 中使用 input$myFilter,并在 DT 中隐藏 Search 选项。
  • 我刚开始用Shiny,你说的DT中隐藏搜索选项是什么意思?

标签: r shiny


【解决方案1】:

我们有 2 个选项,使用 this post 我们可以从 GlobalSearch 中提取文本。我不精通 jQuery,请多多指教。

或者我们可以使用inputText 进行自定义搜索,该搜索可用于对所有表进行子集化。

将此行插入到 ui.R:

textInput("myFilter", "myFilter", "good")

然后在 server.R 中对 DT 表进行子集化,例如将 output$mytable1 更改为以下。这将搜索每一列以查找匹配的输入文本(它可能会变慢,因此您可能需要选择一些列进行搜索):

  output$mytable1 <- DT::renderDataTable({
    diamonds[
      apply(diamonds, 1, function(i) any(grepl(input$myFilter, as.character(i),
                                               ignore.case = TRUE))), ]
  })

使用相同的 input$myFilter 对其他 DT 表输出进行相同的更改。

关于隐藏搜索框,见dom DT的选项,一个 来自rstudio DT manual的例子:

# only display the table, and nothing else
datatable(head(iris), options = list(dom = 't'))

【讨论】:

  • 谢谢,第二个解决方案对我有用,尽管第一个解决方案看起来更好更干净。当我使用, options = list(dom = 't') 时,页面被禁用并且只显示第一页,有什么解决方法吗?
猜你喜欢
  • 1970-01-01
  • 2016-06-08
  • 2018-12-25
  • 2018-08-11
  • 2011-06-07
  • 2018-01-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多