Ich habe ein Problem mit der Kombination von "selectInput" und "updateSelectInput" in meiner Shiny-App (ich bin neu bei Shiny, aber ich kann nirgendwo eine Antwort auf diese Frage finden). Ich möchte das Etikett mit HTML-Tags wie im folgenden Beispiel formatieren (z. B. zwischen zwei Zeilen aufgeteilt, Schriftgröße ändern). Dies funktioniert gut für die "selectInput", aber die "updateSelectInput" kann nicht die gleiche Bezeichnung verdauen und es gibt "[object Object]". Es scheint mir, dass es nicht mit HTML-Tags umgehen kann. Gibt es dafür einen Workaround ??? Vielen Dank!updateSelectInput-Label akzeptiert keine HTML-Tags?
ui.R:
# Load libraries needed for app
library(shiny)
library(shinydashboard)
# Define the overall UI with a dashboard page template
shinyUI(
dashboardPage(
dashboardHeader(title = "dashboard header"),
dashboardSidebar(
#Create first dropdown box
selectInput("choice1", "First choice:",1:5,selected=NULL),
#Create second dropdown box
selectInput("choice2", p("Then, make your ", tags$br(), tags$small("second choice")), c("a","b","c","d","e"))
),
dashboardBody()
)
)
server.R:
# Load libraries needed for app
library(shiny)
library(shinydashboard)
# Define server for the Shiny app
shinyServer(function(input, output,session) {
# populate second dropdown box when a choice in first dropdown box is made
observe({
updateSelectInput(session, "choice2", p("Then, make your ", tags$br(), tags$small("second choice")), c("a","b","c","d","e"))
})
})
Hallo Ron, Vielen dank für Ihre schnelle Antwort. Erstens, mein Problem löste das Etikett in updateSelectInput Auskommen !!! Obwohl Ich verstehe immer noch nicht, warum es das selbe nicht akzeptieren würde, das selectInput an erster Stelle akzeptiert - irgendwelche Ideen.Ich habe nichts in die Beobachtung aufgenommen, weil es außer dem Punkt war, aber ich nehme an, dass ich das vollständig hätte entfernen können dann danke nochmal! – humuskopf
updateSelectInput ist schwierig. Sie können in selectInput auch label = NULL festlegen und die Beschriftung als HTML-Absatz oberhalb des Steuerelements in der Benutzeroberfläche oder im Server mithilfe von renderUI/uiOutput hinzufügen. Normalerweise mache ich das, da es viel flexibler ist. –
OK, danke Ron! Zumindest bin ich mir dessen jetzt bewusst! – humuskopf