It will only append the first time I click because input$shinyalert is TRUE after I hit okay. Is there a way to reset the input for shinyalert so that it will re-trigger my observe when I hit action button the second/third.. time in a session.
I tried to assign NULL/FALSE/0 to input$shinyalert (input$shinyalert <- NULL) but it gave me this error.
Warning:
Error in $<-.reactivevalues:
Attempted to assign value to a read-only reactivevalues object
Here is my code
# observe event for my action button
observeEvent(input$action, {
shinyalert("","Are you sure?", type="warning", showCancelButton = TRUE)
})
observe({
req(input$shinyalert)
isolate({
newrow <- data.frame(a = "fisrt",
b = "second",
c = "third")
# appending to mytable in SQL server
dbWriteTable(conn, "mytable", newrow, append = TRUE)
})
})
Can't you use a R callback function, like this:
Otherwise, to reset, you can use a JS callback: