我正在使用Twitter的先行前端库进行自动完成。我的配置使用远程调用服务器。自动完成本身工作正常,但是表单标签现在拒绝在输入标签中实际输入内容(在按Enter之后)。我怀疑这是因为先行者强迫围绕着标签。这是我的代码:
<form class="navbar-search form-search pull-left" action="javascript:query_main()" method="get">
<div class="main_dropdown navbar-search">
<input class="typeahead" id="query_main" type="text">
</div>
</form>
Below is when the code worked (without typeahead)
<form class="navbar-search form-search pull-left" action="javascript:query_main()" method="get">
<input type="text" id="query_main" class="main_dropdown typeahead">
</form>
有什么想法吗?感谢。
答案 0 :(得分:4)
您应该在表单中提供至少一个<input type="submit" />
,以便在按回车时提交表单。
如果您不想显示该按钮,请使用CSS隐藏它。
答案 1 :(得分:2)
尝试在输入中添加data-provide="typeahead"
属性,例如官方文档示例:http://getbootstrap.com/2.3.2/javascript.html#typeahead
如果您想对所选项目执行更复杂的操作,可以在bootstrap的预先输入中使用updater
选项。
例如,在你的情况下,你会把这样的东西(在jQuery中):
$('#query_main').typeahead({
// Some options
updater: function(item) {
// Do something with item
return item;
},
// Other options
});