R-根据选择输入禁用/启用单个单选按钮
我想在选择“B”时禁用“3”,并将单选按钮选择移动到“1”。当再次选择“A”时,我希望再次启用“3”。我用R-根据选择输入禁用/启用单个单选按钮,r,shiny,R,Shiny,我想在选择“B”时禁用“3”,并将单选按钮选择移动到“1”。当再次选择“A”时,我希望再次启用“3”。我用shinyjs::runjs(“”)尝试了几件事,但效果并不理想。任何帮助都将不胜感激 library(shiny) library(shinyjs) library(shinyWidgets) if (interactive()) { ui <- fluidPage( useShinyjs(), selectInput(inputId="input&qu
shinyjs::runjs(“”
)尝试了几件事,但效果并不理想。任何帮助都将不胜感激
library(shiny)
library(shinyjs)
library(shinyWidgets)
if (interactive()) {
ui <- fluidPage(
useShinyjs(),
selectInput(inputId="input",
label="choose ",
c("A" = "a",
"B" = "b")),
radioButtons(inputId="select",
label="number",
c("1"="one",
"2"="two",
"3"="three")),
mainPanel(verbatimTextOutput("output")
)
)
server <- function(input, output) {
observeEvent(input$input, {
if(input$input=="b"){
# disable 3
shinyjs::runjs("")
}else{
# enable 3 again if input$input=="a"
}
})
output$output <- renderText({ input$select })
}
shinyApp(ui, server)
}
库(闪亮)
图书馆(shinyjs)
图书馆(shinyWidgets)
if(interactive()){
ui一种方法是使用conditionPanel
。试试这个
library(shiny)
library(shinyjs)
library(shinyWidgets)
ui <- fluidPage(
useShinyjs(),
selectInput(inputId="input",
label="choose ",
c("A" = "a",
"B" = "b")),
conditionalPanel(condition = "input.input == 'a'",
radioButtons(inputId="select",
label="number",
c("1"="one",
"2"="two",
"3"="three"),
selected="three")
),
conditionalPanel(condition = "input.input == 'b'",
radioButtons(inputId="select2",
label="number",
c("1"="one",
"2"="two"),
selected="one")
),
mainPanel(verbatimTextOutput("output")
)
)
server <- function(input, output) {
mysel <- reactive({
if (input$input=="a") {
sel <- input$select
} else{
sel <- input$select2
}
sel
})
output$output <- renderText({ mysel() })
}
shinyApp(ui, server)
非常感谢:)
ui <- fluidPage(
useShinyjs(),
selectInput(inputId="input",
label="choose ",
c("A" = "a",
"B" = "b")),
radioButtons(inputId="select",
label="number",
c("1"="one",
"2"="two",
"3"="three"),
selected="one"),
mainPanel(verbatimTextOutput("output")
)
)
server <- function(input, output, session) {
observeEvent(input$input, {
if(input$input=="b"){
mychoices <- c("1"="one", "2"="two")
}else{
mychoices <- c("1"="one", "2"="two", "3"="three")
}
updateRadioButtons(session, "select", choices = mychoices)
})
output$output <- renderText({ input$select })
}
shinyApp(ui, server)