This is a bit of a hack (it makes assumptions about the HTML structure used internally by shinydashboard::valueBox()), but you could get it working by adding some custom JavaScript...something like this:
document.querySelector(".small-box").parentNode.setAttribute("onclick", "window.open('https://economictimes.indiatimes.com', 'newwindow', 'width=300,height=250'); return false;")
(NOTE: if you wanted multiple valueBox()s to open multiple different links, that JS would have to be a bit more sophisticated)
If you put that in a file www/open-window.js alongside your app.R that has:
library(shiny)
library(shinydashboard)
ui <- dashboardPage(
dashboardHeader(title = "sam"),
dashboardSidebar(),
dashboardBody(
fluidRow(
valueBox("100", subtitle = tags$p("Attendance", style = "font-size: 200%;"),
icon = icon("trademark"), color = "yellow", width = 4)
),
tags$script(src = "open-window.js")
)
)
server <- function(input, output) {
}
shinyApp(ui,server)