actionButton {shiny} | R Documentation |
Action button/link
Description
Creates an action button or link whose value is initially zero, and increments by one each time it is pressed.
Usage
actionButton(inputId, label, icon = NULL, width = NULL, disabled = FALSE, ...)
actionLink(inputId, label, icon = NULL, ...)
Arguments
inputId |
The |
label |
The contents of the button or link–usually a text label, but you could also use any other HTML, like an image. |
icon |
An optional |
width |
The width of the input, e.g. |
disabled |
If |
... |
Named attributes to be applied to the button or link. |
Server value
An integer of class "shinyActionButtonValue"
. This class differs from
ordinary integers in that a value of 0 is considered "falsy".
This implies two things:
Event handlers (e.g.,
observeEvent()
,eventReactive()
) won't execute on initial load.Input validation (e.g.,
req()
,need()
) will fail on initial load.
See Also
observeEvent()
and eventReactive()
Other input elements:
checkboxGroupInput()
,
checkboxInput()
,
dateInput()
,
dateRangeInput()
,
fileInput()
,
numericInput()
,
passwordInput()
,
radioButtons()
,
selectInput()
,
sliderInput()
,
submitButton()
,
textAreaInput()
,
textInput()
,
varSelectInput()
Examples
## Only run examples in interactive R sessions
if (interactive()) {
ui <- fluidPage(
sliderInput("obs", "Number of observations", 0, 1000, 500),
actionButton("goButton", "Go!", class = "btn-success"),
plotOutput("distPlot")
)
server <- function(input, output) {
output$distPlot <- renderPlot({
# Take a dependency on input$goButton. This will run once initially,
# because the value changes from NULL to 0.
input$goButton
# Use isolate() to avoid dependency on input$obs
dist <- isolate(rnorm(input$obs))
hist(dist)
})
}
shinyApp(ui, server)
}
## Example of adding extra class values
actionButton("largeButton", "Large Primary Button", class = "btn-primary btn-lg")
actionLink("infoLink", "Information Link", class = "btn-info")