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

问题描述 投票:0回答:1

是否有一种方法可以使数据表的搜索栏为空,而不是默认情况下在其中包含'setosa'的同时将表中的'setosa'突出显示?或者至少找到另一种方式来突出显示或强调'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)
r shiny dt
1个回答
2
投票

好,您可以执行类似的操作。

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)
© www.soinside.com 2019 - 2024. All rights reserved.