アプリケーションから「グローバル検索」オプションを削除したいのですが、「列検索」オプションはそのままにしておきます。何か案は? searching=FALSE, filtering='none'
などのさまざまなパラメーターを試しました...これはどれも正しく動作しません。
私のコード:
server.R:
library("shiny")
library("DT")
data(iris)
shinyServer(function(input, output) {
output$tabelka <- DT::renderDataTable({
datatable(iris, filter="top", selection="multiple", escape=FALSE)
})
})
ui.R
library("shiny")
library("DT")
shinyUI(fluidPage(
DT::dataTableOutput("tabelka")
))
そして私の問題を理解するのに役立つ写真:
DTオプションはリストとして渡す必要があります。さらに、sDom初期化変数を使用することにより、DOMコントロールのどこに配置するかを指定できます。標準セットアップは次のようになります。
datatable(iris, filter="top", selection="multiple", escape=FALSE,
options = list(sDom = '<"top">flrt<"bottom">ip'))
構文は少し風変わりですが、基本的に上記の説明では、f、l、r、およびtオプションは上部divに配置され、iおよびpオプションは下部divに配置されます。より詳細な説明については、 http://legacy.datatables.net/usage/options のドキュメントを参照してください。
とにかく、「f」は「フィルタリング入力」オプション(つまり、検索オプション)であり、「f」を別のdivに移動するか省略すると、検索バーを移動したり無効にしたりできます。問題の解決策は次のようになります。
datatable(iris, filter="top", selection="multiple", escape=FALSE,
options = list(sDom = '<"top">lrt<"bottom">ip'))
まだ見ている人のための、やや単純な構文:
datatable(head(iris), options = list(dom = 't'), filter = list(position = "top"))
その他のオプション。テーブルのみを表示するには、dom = 't'を使用します。
datatable(head(iris), options = list(dom = 't'))
テーブルとフィルター(検索ボックス)を表示するには、デフォルト設定:
datatable(head(iris), options = list(dom = 'ft'))
ソース:
datatable(iris, filter="top", selection="multiple", escape=FALSE,
options = list(searching = FALSE))