我已经构造了一个有很多很多输入字段的输入表单。
我想引用这些字段中的每一个,方法是使用for循环语句,动态地将标记生成为文本,并将其作为标记名称(而不是对每个字段键入数百个调用)。
我可以构建一个循环语句,问题是,我不知道如何显式地引用一个闪亮的输入字段-当然,没有键入输入$fieldname。
是否有一种方法可以显式转换文本"input$fieldname"而是引用一个闪亮的输入字段的值?
你可以像这样动态引用一个输入:
input[['mytextbox']]
如果你有字符串"input$mytextbox",你可以像这样得到它的值:
mystring <- "input$mytextbox"
input[[substring(mystring, 7)]]
下面是一个最小的工作示例
library(shiny)
mystring <- "input$mytextbox"
ui <- fluidPage(
textInput('mytextbox', 'My Text Box', value = 'Hello World'),
actionButton('mybutton', 'Dynamically Get Value')
)
server <- function(input, output, session) {
observeEvent(input$mybutton, {
showNotification(
input[[substring(mystring, 7)]]
)
})
}
shinyApp(ui, server)