2016-04-21 90 views
0

我想为selectInput函数设置文本值并为选择的每个选项保存值。我的尝试不想工作,我不明白原因。闪亮 - 为选择输入更新输入文本

有没有人有想法?

library(shiny) 

runApp(list(
    ui = bootstrapPage(
    sidebarPanel(
     selectInput('SELoption', label = "Select option", 
        choices = c(
        "Option 1" = 'f1', 
        "Option 2" = 'f2', 
        "Option 3" = 'f3'), 
        selected = 'f1') 
), 

    mainPanel(
    textInput("text", label = strong("Text"),value = 0) 
) 

), 

server = function(input, output, session) { 
    userEnv <- new.env() 
    userEnv$text <- NULL 

    optionID <- reactive({ 
    if(is.null(input$SELoption)){return()} 
    return(input$SELoption) 
    }) 

    observe({ 
    fID <- optionID() 

    if(!is.null(userEnv$text[[fID]])) 
     updateTextInput(session, "text", value = userEnv$text[[fID]]) 
    }) 

} 
)) 

回答

0
library(shiny) 
library(shinyjs) 

runApp(list(
    ui = tagList(useShinyjs(),bootstrapPage(
    sidebarPanel(
     selectInput('SELoption', label = "Select option", 
        choices = c(
        "Option 1" = 'f1', 
        "Option 2" = 'f2', 
        "Option 3" = 'f3'), 
        selected = 'f1') 
    ), 

    mainPanel(
     disabled(textInput("text", label = strong("Text"),value = "f1")) 
    ) 

)), 

    server = function(input, output, session) { 


    optionID <- reactive({ 
     if(is.null(input$SELoption)){return(NULL)} 
     return(input$SELoption) 
    }) 

    observe({ 
     fID <- optionID() 

     if(!is.null(fID)) 
     updateTextInput(session, "text", value = fID) 
    }) 


    } 
)) 
+0

感谢您的帮助,但除了这个想法是设置了一些即使我使用'textinput'作为与'numericinput'您不能设置arbitrarly这不保存设定值 – Stefano