Простой пример для других:
library(shiny)
library(shinyjs)
ui <- fluidPage(
useShinyjs(),
textInput('mail', 'mail'),
actionButton("send", "send")
)
server <- function(input, output) {
observe({
#if(is.null(input$zip) || input$zip == ""){
# disable("send")
#} else if(is.null(input$indice) || input$indice == ""){
# disable("send")
#} else
if(!grepl("\\<[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}\\>", input$mail)){
disable("send")
}
else{
enable("send")
}
})
}
shinyApp(ui, server)