闪亮:根据 radioButton() 中的选择启用 sliderInput()
shiny: Enable sliderInput() based on selection in radioButton()
我无法使 observeEvent
正常工作。
只有在 radioButton()
中选择了 Yes 才能启用和访问 sliderInput()
我错过了什么?
library(shiny)
ui <- fluidPage(
radioButtons("EXBR", "External Beam Radiation", choiceValues=list("No","Yes"),
choiceNames=list("No","Yes"), selected ="No", inline=T),
sliderInput("EXBRGy", "Cumulative Gy dosage",
min = 2, max = 60, value = 40)
)
server <- function(input, output, session) {
observeEvent(input$EXBR, {
if((input$EXBR == "Yes")){
disable("EXBRGy")
}else{
enable("EXBRGy")
}
})
}
shinyApp(ui, server)
在使用大多数shinyjs
功能之前,您需要在应用程序的ui
中调用useShinyjs()
。最好将其包含在顶部附近作为约定。还在 if
语句中添加了 library(shinyjs)
并删除了额外的括号。
library(shiny)
library(shinyjs)
ui <- fluidPage(
shinyjs::useShinyjs(),
radioButtons("EXBR", "External Beam Radiation", choiceValues=list("No","Yes"),
choiceNames=list("No","Yes"), selected ="No", inline=T),
sliderInput("EXBRGy", "Cumulative Gy dosage",
min = 2, max = 60, value = 40)
)
server <- function(input, output, session) {
observeEvent(input$EXBR, {
if(input$EXBR == "Yes"){
disable("EXBRGy")
}else{
enable("EXBRGy")
}
})
}
shinyApp(ui, server)
我无法使 observeEvent
正常工作。
只有在 radioButton()
sliderInput()
我错过了什么?
library(shiny)
ui <- fluidPage(
radioButtons("EXBR", "External Beam Radiation", choiceValues=list("No","Yes"),
choiceNames=list("No","Yes"), selected ="No", inline=T),
sliderInput("EXBRGy", "Cumulative Gy dosage",
min = 2, max = 60, value = 40)
)
server <- function(input, output, session) {
observeEvent(input$EXBR, {
if((input$EXBR == "Yes")){
disable("EXBRGy")
}else{
enable("EXBRGy")
}
})
}
shinyApp(ui, server)
在使用大多数shinyjs
功能之前,您需要在应用程序的ui
中调用useShinyjs()
。最好将其包含在顶部附近作为约定。还在 if
语句中添加了 library(shinyjs)
并删除了额外的括号。
library(shiny)
library(shinyjs)
ui <- fluidPage(
shinyjs::useShinyjs(),
radioButtons("EXBR", "External Beam Radiation", choiceValues=list("No","Yes"),
choiceNames=list("No","Yes"), selected ="No", inline=T),
sliderInput("EXBRGy", "Cumulative Gy dosage",
min = 2, max = 60, value = 40)
)
server <- function(input, output, session) {
observeEvent(input$EXBR, {
if(input$EXBR == "Yes"){
disable("EXBRGy")
}else{
enable("EXBRGy")
}
})
}
shinyApp(ui, server)