我有一个必须使用引导程序自动完成下拉菜单的要求,但是用户可以根据需要在该下拉菜单中使用自由格式的文本。在考虑TypeAhead之前,我可以使用Bootstrap TypeAhead文本框,但是我需要具有下拉菜单,因为我们希望提供一些默认值作为headstart选项,以防用户不知道要搜索什么。
我在MVC DropDownListFor中使用它,因为它为我们创建了一个选择控件。
我发现这篇文章为我做到了。
https://github.com/danielfarrell/bootstrap-combobox/pull/20
我要做的就是从选择控件中删除名称,而该控件让我输入自由格式的文本。到目前为止一切都很好。
现在,我将其与Knockoutjs结合使用。我将选项和选择的值绑定到选择控件,然后在呈现模板的行上调用(selector).combobox(),这使选择控件成为自举式组合框,并添加了输入控件并将选择控件隐藏在场景中背后。
现在的问题是,当我尝试获取要发送到服务器的值时,由于我在输入框中输入的值不是我为选择控件提供的选项中的有效选项,因此默认情况下始终将其设置为第一个选项。这是因为,我将所选值的绑定设置在选择控件上,而不是在bootstrap-combobox.js创建的输入框上。
我的问题是如何使输入框与选择控件绑定到的数据绑定到相同的属性。
还有其他选择吗?让我知道您是否需要进一步说明或有任何疑问。请提出建议。
谢谢。