在 R 中通过 bsbutton 插入 UI单击按钮时不会插入 UI请问有什么帮助吗?

问题描述

我正在尝试创建一个交互式 UI,它会在用户与其交互时询问更多详细信息。 我添加一个 bsButton,它应该插入更多输入选项以收集更多详细信息,但该按钮在单击时并未插入 UI。对代码有任何帮助或建议吗?提前致谢。

ui <- shinyUI(  #UI
  dashboardPage( 
       fluidPage(  
         fluidRow(
            introBox(
                bsButton("pricing_request",#button to insert UI to collect more details
                         label = "Pricing Request",icon = icon("car-battery"),style = "success")
)))))

#serverpart

server <- function(input,output,session) {


observeEvent(input$pricing_request,{
insertUI(
selector = "#add",where = "afterEnd",ui = Box(               #UI to be inserted
  bootstrapPage(
    div(style="float:right",actionButton("add_request",label = "add option",icon = icon("plus"),style = "arial")),div(style="display:inline-block",textInput(
          inputId = "option_1",label = "Option",width = '350px',value = "insert option"))))
 )})}




             
    
       

解决方法

通过写作

insertUI(
  selector = "#add",where = "afterEnd",......

您请求在 ID 为 add 的 HTML 元素之后添加 UI。但是您的应用程序中没有这样的元素。如果您在应用中的某处添加 div(id = "add"),那应该可以。