1
我的目标是获得一个radioButton()
输入HTML的标签和复位功能。radioButton()与HTML和shinyjs :: reset()的选择
我从以下内容开始,因为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()
;因为我想以某种方式重置按钮,按下按钮后有没有选择。
OK - 这对我来说已经可用!在我的用例中,(甚至)更好的解决方案是初始和重置状态(不推荐)的版本,没有按钮被突出显示。但是我的知识分子接近零... – sammerk