Lucca Ramalho
Lucca Ramalho

Reputation: 593

Action button in Shiny app updates query in url with input from user

I have this app:

library(shiny)

ui <- fluidPage(
  textInput("query_text","Type something:"),
  actionButton(inputId='query_button',
               label="Search", 
               icon = icon("th"), 
               onclick = paste("location.href='http://www.example.com?lookfor=",
                               input$query_text, "'", sep=""))
)

server <- function(input, output, session) {

}

shinyApp(ui, server)

I'd like to update the url with the action button, so when the user types something (for example: paper), it updates the url like this:

http://www.example.com/?lookfor=paper

Any ideias how to do it? Maybe wrapping it on a observeEvent?

Upvotes: 0

Views: 797

Answers (1)

DeanAttali
DeanAttali

Reputation: 26313

Based on your replies to my comment, what you're looking for is the updateQueryString function.

library(shiny)

ui <- fluidPage(
  textInput("query_text", "Type something:"),
  actionButton(inputId = 'query_button', label = "Search")
)

server <- function(input, output, session) {
  observeEvent(input$query_button, {
    updateQueryString(paste0("?lookfor=", input$query_text))
  })
}

shinyApp(ui, server)

Upvotes: 1

Related Questions