我的目标是在其标签和重置功能中获得radioButton()
带有 HTML 的输入。
我从以下开始,因为radioButtons()
标签不允许使用 HTML。
library(shiny)
library(shinyjs)
ui <- shinyUI(bootstrapPage(
useShinyjs(),
tags$div(id = "form",
tags$div(HTML('
<div id="rating" class="form-group shiny-input-radiogroup shiny-input-container">
<label class="control-label" for="rating">Your Rating:</label>
<div class="shiny-options-group">
<div class="radio">
<label>
<input type="radio" name="one" value="1"/>
<span><i class="fa fa-star" aria-hidden="true"></i></span>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="two" value="2"/>
<span><i class="fa fa-star" aria-hidden="true"></i><i class="fa fa-star" aria-hidden="true"></i></span>
</label>
</div>
</div>
</div>'))),
actionButton("feedback_btn", "send feedback", icon = icon("send", lib = "font-awesome")),
htmlOutput("Ratingout")
))
server <- shinyServer(function(input, output, session) {
output$Ratingout <- renderText({
paste("The Rating was ", input$rating)
})
observeEvent(input$feedback_btn, {
reset("rating")
})
})
shinyApp(ui, server)
但我遇到了两个问题:
- 我无法访问该
input$Ratingout
值和 - 看来我没有
shinyjs::reset()
以正确的方式使用;因为我想以某种方式重置按钮,所以按下按钮后没有选择。