mirror of
https://github.com/rstudio/shiny.git
synced 2026-01-13 17:08:05 -05:00
94 lines
2.9 KiB
R
94 lines
2.9 KiB
R
% Generated by roxygen2: do not edit by hand
|
|
% Please edit documentation in R/input-action.R
|
|
\name{actionButton}
|
|
\alias{actionButton}
|
|
\alias{actionLink}
|
|
\title{Action button/link}
|
|
\usage{
|
|
actionButton(inputId, label, icon = NULL, width = NULL, disabled = FALSE, ...)
|
|
|
|
actionLink(inputId, label, icon = NULL, ...)
|
|
}
|
|
\arguments{
|
|
\item{inputId}{The \code{input} slot that will be used to access the value.}
|
|
|
|
\item{label}{The contents of the button or link--usually a text label, but
|
|
you could also use any other HTML, like an image.}
|
|
|
|
\item{icon}{An optional \code{\link[=icon]{icon()}} to appear on the button.}
|
|
|
|
\item{width}{The width of the input, e.g. \code{'400px'}, or \code{'100\%'};
|
|
see \code{\link[=validateCssUnit]{validateCssUnit()}}.}
|
|
|
|
\item{disabled}{If \code{TRUE}, the button will not be clickable. Use
|
|
\code{\link[=updateActionButton]{updateActionButton()}} to dynamically enable/disable the button.}
|
|
|
|
\item{...}{Named attributes to be applied to the button or link.}
|
|
}
|
|
\description{
|
|
Creates an action button or link whose value is initially zero, and increments by one
|
|
each time it is pressed.
|
|
}
|
|
\section{Server value}{
|
|
|
|
An integer of class \code{"shinyActionButtonValue"}. This class differs from
|
|
ordinary integers in that a value of 0 is considered "falsy".
|
|
This implies two things:
|
|
\itemize{
|
|
\item Event handlers (e.g., \code{\link[=observeEvent]{observeEvent()}}, \code{\link[=eventReactive]{eventReactive()}}) won't execute on initial load.
|
|
\item Input validation (e.g., \code{\link[=req]{req()}}, \code{\link[=need]{need()}}) will fail on initial load.
|
|
}
|
|
}
|
|
|
|
\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")
|
|
|
|
}
|
|
\seealso{
|
|
\code{\link[=observeEvent]{observeEvent()}} and \code{\link[=eventReactive]{eventReactive()}}
|
|
|
|
Other input elements:
|
|
\code{\link{checkboxGroupInput}()},
|
|
\code{\link{checkboxInput}()},
|
|
\code{\link{dateInput}()},
|
|
\code{\link{dateRangeInput}()},
|
|
\code{\link{fileInput}()},
|
|
\code{\link{numericInput}()},
|
|
\code{\link{passwordInput}()},
|
|
\code{\link{radioButtons}()},
|
|
\code{\link{selectInput}()},
|
|
\code{\link{sliderInput}()},
|
|
\code{\link{submitButton}()},
|
|
\code{\link{textAreaInput}()},
|
|
\code{\link{textInput}()},
|
|
\code{\link{varSelectInput}()}
|
|
}
|
|
\concept{input elements}
|