Call sv_optional()
to generate a validation function that indicates an input is allowed to not be present. If an sv_optional()
rule sees that an input is not present, subsequent rules for that input are skipped and the input is considered valid. Otherwise, the rule simply passes. (sv_optional()
will never return a validation error/message.)
By default, the definition of "is present" is based on input_provided()
.
Child validators (see InputValidator$add_validator()
) are not affected by sv_optional()
rules in parent validators; only rules in the same validator instance as the sv_optional()
will be skipped.
sv_optional(test = input_provided)
Arguments
A single-argument function, or single-sided formula (using .
to access the value to test), that returns TRUE
for success and FALSE
for failure.
The sv_required()
function, which takes a different approach to field presence.
Other rule functions: compose_rules()
, sv_between()
, sv_email()
, sv_equal()
, sv_gte()
, sv_gt()
, sv_in_set()
, sv_integer()
, sv_lte()
, sv_lt()
, sv_not_equal()
, sv_numeric()
, sv_regex()
, sv_required()
, sv_url()
## Only run examples in interactive R sessions
if (interactive()) {
library(shiny)
library(shinyvalidate)
ui <- fluidPage(
textInput("email", "Email")
)
server <- function(input, output, session) {
# Validation rules are set in the server, start by
# making a new instance of an `InputValidator()`
iv <- InputValidator$new()
# Basic usage: `sv_optional()` is often paired with
# another `sv_*()` function; below, an email in
# `input$email` is not required, but if present, it
# must be valid
iv$add_rule("email", sv_optional())
iv$add_rule("email", sv_email())
# Finally, `enable()` the validation rules
iv$enable()
}
shinyApp(ui, server)
}
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4