2014-12-22 8 views
6

In questa app lucida, è necessario consentire all'utente di selezionare solo una casella di controllo. C'è comunque per raggiungere questo obiettivo?Abilitare un segno di spunta solo in checkboxGroupInput

ui.R

library(shiny) 
shinyUI(fluidPage(
    titlePanel("abc"), 
    sidebarLayout(
    sidebarPanel(
     checkboxGroupInput("choice", "What will you like to see?", 
         choices=c("red","green")), 
     conditionalPanel(
     condition = "input.choice == 'red'", 
     sliderInput("slider1","slide",min=0,max=100,value=100,step=1,animate=TRUE)), 
     conditionalPanel(
     condition="input.choice=='green'", 
     selectInput("choice","Select", c("a","b","c")), 
     sliderInput("slider2","slide",min=0,max=100,value=100,step=1,animate=TRUE)) 
    ),  
    mainPanel(
     "abc" 
    ) 
) 
)) 

server.R

shinyServer(function(input, output) { 

} 
) 

risposta

11

Probabilmente si dovrebbe usare radioButtons() invece, in questo modo;

radioButtons(inputId="choice", label="What would you like to see?", 
       choices=c("red","green")) 

Ciò consentirà all'utente di scegliere solo una delle opzioni.

Nota Ho fissato le virgolette nella parte choices di questa risposta. Grazie a @Limbu per aver segnalato l'errore di battitura.

2

si è dimenticato di mettere le virgolette attorno a ogni scelta, è raggruppato le due scelte come singola scelta

radioButtons(inputId="choice", label="What would you like to see?", 
       choices=c("red","green")) 
+0

Non sono sicuro di quello che vuoi dire. Ci sono virgolette. –

Problemi correlati