如何在R Shiny中更改DT DataTable标题的背景和文本颜色

5

我有一个datatable想在R Shiny中展示,但是我想让包含列名的头部列为红色并且文字为白色。使用formatStyles(),我只能指定整个列而不是仅仅是包含列名的头部行。你建议如何解决这个问题?


library(shiny)
library(dplyr)


ui <- fluidPage(

    sidebarLayout(
        sidebarPanel(
        ),
    mainPanel(
        DT::DTOutput("table")
    )
))

server <- function(input, output) {
    data <- tibble(name = c("Justin", "Corey", "Sibley"),
           grade = c(50, 100, 100))
    
    output$table <- renderDT({
        datatable(data)
    })

    
}

# Run the application 
shinyApp(ui = ui, server = server)

您的帖子中提到“列名应为红色,文本应为白色。”。您想要什么背景颜色? - akrun
1个回答

8
如果列名文本为“白色”,背景为“红色”。
server <- function(input, output) {
  
  data <- tibble(name = c("Justin", "Corey", "Sibley"),
                 grade = c(50, 100, 100))
  
  output$table <- DT::renderDT({
    datatable(data, options = list(
      
      initComplete = JS(
        "function(settings, json) {",
        "$(this.api().table().header()).css({'background-color': 'red', 'color': 'white'});",
        "}")
    ))
  })
  
  
}

-输出

输入图片说明


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接