2017-07-05 56 views
0

如何访问从R发光的selectizeInput控件的选定项的标签?访问R Shiny selectizeInput标签

在下面的例子中,如果DM用户点击请教,我想检索值DM问,不DM_ask

output$group_quote_type_holder <- renderUI({ 
quote_type_names <- c("Bid Price", "Ask Price", "DM Bid","DM Ask") 
quote_type_sql <- c("price_bid","price_ask","DM_bid","DM_ask") 
names(quote_type_sql) <- quote_type_names 
quote_type_named_list <- quote_type_sql 
selectizeInput("group_quote_type", 
      label = "Select a type:", 
      choices = quote_type_named_list, 
      selected = "DM_ask") 
})# end renderUI 

回答

0

如果在selectizeInputchoices值是命名列表,名称显示给用户,并且相应的值在服务器中返回。

如果要显示“DM询问”并返回“DM询问”,只需使用您的矢量quote_type_names

selectizeInput(
    inputId = "group_quote_type", 
    label = "Select a type:", 
    choices = c("Bid Price", "Ask Price", "DM Bid", "DM Ask"), 
    selected = "DM Ask" 
) 

编辑

对不起,我听不懂。我假设quote_type_named_list不会退出globaenv,它只是在renderUI中定义,所以像这样?

library("shiny") 

ui <- fluidPage(
    uiOutput(outputId = "group_quote_type_holder"), 
    verbatimTextOutput(outputId = "res") 
) 

server <- function(input, output) { 

    quote_type_named_reac <- reactiveValues(x = NULL) 

    output$group_quote_type_holder <- renderUI({ 
    quote_type_names <- c("Bid Price", "Ask Price", "DM Bid","DM Ask") 
    quote_type_sql <- c("price_bid","price_ask","DM_bid","DM_ask") 
    names(quote_type_sql) <- quote_type_names 
    quote_type_named_list <- quote_type_sql 

    quote_type_named_reac$x <- quote_type_named_list 

    selectizeInput(inputId = "group_quote_type", 
        label = "Select a type:", 
        choices = quote_type_named_list, 
        selected = "DM_ask") 
    }) 

    output$res <- renderPrint({ 
    names(which(quote_type_named_reac$x == input$group_quote_type)) 
    }) 
} 

shinyApp(ui = ui, server = server) 
+0

谢谢,也许我并不完全清楚。我需要的值保持不变,因为它们对我的应用程序的逻辑非常重要。我仍然需要检索特定选定选项的名称(以显示在图表标题中)。基本上我需要选择应用功能,显示/ GUI工作的名称,以及selectizeInput之外的选项。 –

+0

对不起,我误解了,你不能像'input $ foo'那样访问标签的值,但是你可以存储选项并在其他地方使用它们。编辑是否回答你的问题? – Victorp

+0

目的,tx。 –