数据表列过滤器在 Shiny 中无法正确显示(使用 DT 包)

mik*_*kew 5 r shiny dt

我有一个数据表,正在使用 DT 包以闪亮的方式呈现。每个单独的列顶部都有一个过滤器。所有列过滤器都正常工作,但格式有点奇怪。 列过滤器的屏幕截图

正如您所看到的,一些过滤器内部有“全部”一词,并且这些过滤器功能正常,当您在其中键入时,您正在键入的词就会显示出来。

然而,其他一些则不然,当我输入这些内容时,过滤机制确实起作用(如正确的行被过滤掉),但您无法看到您输入的过滤器。看起来好像光标在左侧盒子不可见。

我用来渲染数据表的代码如下:

DT::renderDataTable(X,
                    options = list(pageLength = 10, 
                                   searching = TRUE,
                                   autoWidth = TRUE,
                                   columnDefs = list(list(className = 'dt-center', targets = "_all"))
                                   ),
                   filter = "top"
                   )
Run Code Online (Sandbox Code Playgroud)

Chr*_*hee 1

据我所知,只要您对较大的表(即许多列)使用服务器端处理(这是 DT::renderDataTable 的默认设置),这就是 DT::renderDataTable 的一个已知错误。如果您设置server = FALSE,过滤器应该正确显示......

  • 我尝试添加 server=FALSE 设置,但它似乎没有解决问题,对于某些列,“全部”是可见的,当输入文本时,您可以看到它,但对于其他列,它似乎仍然在输入当过滤器工作时,但我正在输入的文本看不到。 (2认同)