默认情况下清空数据表的搜索栏而不是包括突出显示的文本

Empty the search bar of a datatable by default instead of including the highlighted text

有没有办法使数据table的搜索栏为空,而不是默认在其中包含'setosa',同时保持'setosa'在[=16]中突出显示=]?或者至少找到另一种方法来突出显示或下划线 'setosa'?

library(DT)
ui <- dashboardPage(
    dashboardHeader(title = "Dynamic sidebar"),
    dashboardSidebar(

    ),
    dashboardBody(
        DT::dataTableOutput("t")
    )
)

server <- function(input, output) {

    output$t <- renderDT(

        datatable(iris, options = list(searchHighlight = TRUE, search = list(search = 'setosa'))) 
    )

}

shinyApp(ui, server)

好的,你可以这样做。

library(DT)
library(shiny)
library(shinydashboard)

ui <- dashboardPage(
    dashboardHeader(title = "Dynamic sidebar"),
    dashboardSidebar(
    ),
    dashboardBody(
        DT::dataTableOutput("t")
    )
)

server <- function(input, output) {

    data <- reactive({
        mydata <- iris
        rownames(mydata) <- gsub("setosa",tags$span(style="color:red", "setosa"),rownames(mydata))
        for(i in 1:ncol(mydata)){
            mydata[,i] <- gsub("setosa",tags$span(style="color:red", "setosa"),mydata[,i])
        }
        mydata
    })

    output$t <- renderDT(
        datatable(data(), options = list(searchHighlight = TRUE, search = list(search = '')), escape = F)  
    )

}

shinyApp(ui, server)