2017-04-10 3 views
0

Ich benutze selectizeInput, um eine Liste von Autocompletable-Wörtern wie in der folgenden App veranschaulicht zu haben.Erhalten unvollständige Eingabe von selectizeInput

server <- function(input, output) { 
    output$word <- renderText({ 
     input$selInp 
    }) 
} 

ui <- fluidPage(
    sidebarLayout(
     sidebarPanel(
      selectizeInput('selInp', label ='', 
          selected = 'like', 
          choices = c('like','eat','apples','bananas')) 
     ), 
     textOutput('word') 
    ) 
) 

shinyApp(ui = ui, server = server) 

Etwas, was ich tun würde, in der Lage sein möchte, ist in den Ausgaben zu nehmen, die auch nicht die choices entsprechen. Wenn ich also "orange" schreibe, möchte ich es in der textOutput anzeigen lassen. Gibt es eine Möglichkeit zu sagen, selectizeInput nicht so selektiv über die Eingaben zu sein?

+0

Wie das? http://stackoverflow.com/questions/32223770/r-shiny-selectize-js-item-creation –

Antwort

1

Ich glaube, Sie suchen die create Option:

library(shiny) 

server <- function(input, output) { 
    output$word <- renderText({ 
    input$selInp 
    }) 
} 

ui <- fluidPage(
    sidebarLayout(
    sidebarPanel(
     selectizeInput('selInp', label ='', 
        selected = 'like', 
        options = list('create' = TRUE), 
        choices = c('like','eat','apples','bananas')) 
    ), 
    textOutput('word') 
) 
) 

shinyApp(ui = ui, server = server) 
+0

hmm nicht genau, wie ich denke, es zwingt Benutzer, es für sich selbst dauerhaft hinzuzufügen und erfordert einen verwirrenden Mausklick (hinzufügen). Die genaue Absicht ist, zu bemerken, dass der Benutzer etwas falsch eingibt, was sie geschrieben haben und ihnen sagen "Hey. Ich sehe, dass du das schreibst, aber das ist keine echte Option. Hier ist warum ..." Obwohl dies zu den Grenzen von die ursprüngliche Frage – OganM

+0

Wenn Sie etwas Spezifisches möchten, das selectize nicht unterstützt, können Sie nach alternativen Javascript-Bibliotheken suchen, die Ihr gewünschtes Verhalten unterstützen. Sobald Sie eine JS-Bibliothek finden, die Sie verwenden möchten, ist es nicht zu viel Arbeit, die Bindungen dafür glänzend zu machen –