In following this question if the checkboxGroupInput
has inline=TRUE
then disable(selector="#a .checkbox:nth-child(1) label")
will no longer disable the option. Is there a tweak to the selector string? I tried changing it to checkbox-inline
but that didn't work.
CodePudding user response:
With the inline=TRUE
parameter, the label
elements are not under a div
, therefore you can make the reference directly to the labels.
library(shiny)
ui <- shinyUI(fluidPage(
shinyjs::useShinyjs(),
checkboxGroupInput("a", "A", choices = 1:7, inline = TRUE)
))
server <- shinyServer(function(input, output, session) {
observeEvent(input$a, shinyjs::disable(selector="#a label:nth-child(1)"))
})
shinyApp(ui, server)
CodePudding user response:
Sure, you just have to adjust the JS query collector. Try to adjust this accordingly
subElement <- paste0("#a .checkbox-inline:nth-child(", newSelection,") input")