2016-08-05 44 views
2

我有一个selectInput显示所有可能的选择。我想实现它,以便如果用户在框中键入内容并点击输入,那么也将添加该内容作为选择。添加选项到一个selectInput

observeEvent(input$mykeypress, { 

if(input$mykeypress == 13){ 

    print(input$selectBox) 

} 

我尝试了上面的代码,看看我的输入更改,但似乎无论什么多余的东西我在选择框类型,它都没有承认。

任何人都有想法,我可以识别任何额外的用户类型?

编辑:我正在考虑的另一个想法是创建一个textInput,并预先填充我在选择框中使用的所有值。有这样的可能吗?

+0

查看jQuery的自动完成功能 – MaxZoom

+0

@MaxZoom我不想让用户从预先填充的列表中进行选择。我想让他们输入他们想要的任何输入,并在输入时显示出来 – Green

+0

您应该使用'renderUI'在服务器中构建'selectInput'。然后,你可以使选择反应。 – Carl

回答

3

我最终搞清楚了,因为selectizeInput只是围绕selectize.js,在您的selectizeInput中您可以使用参数:options = list(create = TRUE),并且用户可以轻松地添加单词。

+0

您是否有机会测试“removeOption”是否也可以工作? – Mark

+0

我不认为我不幸测试了这一点。我认为在我的情况下,我可以选择selectizeInput中的任何项目,并将其删除,然后单击该项目,然后在我的键盘上点击退格键。之后,我实现了一个按钮,可以保存新值。 – Green

+0

我会问一下seletize.js github页面。感谢回复 – Mark