Javascript AngularJS:为什么我不能用箭头键从文本框中通过自动完成列表进行选择?

Javascript AngularJS:为什么我不能用箭头键从文本框中通过自动完成列表进行选择?,javascript,jquery,angularjs,twitter-bootstrap,autocomplete,Javascript,Jquery,Angularjs,Twitter Bootstrap,Autocomplete,下面是typeahead的AngularJS API文档中的一段代码: 通过按enter键,我可以用第一个选项填充文本框,但由于某些原因,我无法使用上下箭头键从自动完成列表中选择任何项目,但在它们的示例中,我可以 这里有什么问题 **注意,这是一个Express项目,我使用的是Jade引擎 头文件 link(rel='stylesheet', href='/css/bootstrap.css') script(src='/js/jquery-2.1.1.min.js') script(src='

下面是typeahead的AngularJS API文档中的一段代码:

通过按enter键,我可以用第一个选项填充文本框,但由于某些原因,我无法使用上下箭头键从自动完成列表中选择任何项目,但在它们的示例中,我可以

这里有什么问题

**注意,这是一个Express项目,我使用的是Jade引擎

头文件

link(rel='stylesheet', href='/css/bootstrap.css')
script(src='/js/jquery-2.1.1.min.js')
script(src='/js/angular.min.js')
script(src='/js/bootstrap.min.js')
script(src='/js/ui-bootstrap-tpls-0.11.0.min.js')
script(src='/js/index.js')
index.html中的部分代码

<div ng-controller="TypeaheadCtrl" class="col-md-5 ng-scope">
    <pre class="ng-binding">Model {{selected}}</pre>
    <input type="text" ng-model="selected" placeholder="item name" typeahead="item for item in items | filter:$viewValue | limitTo:8" class="form-control" >
</div>
在玩了一会儿之后,我发现我的浏览器中还有一个自动完成功能。可能是铬自动填充?也许我的up和down被用于此,而不是用于我的web应用程序?如果是这样的话,你将如何通过代码禁用它,这样我就可以在这个页面上使用angular的自动完成

尝试在或级别上设置autocomplete=off


自动完成的文档可以在中找到

我发现了问题!我使用的AngularJS版本1.3.0beta有缺陷。ng mouseenter不工作,正在更改所选索引。我使用了AngularJS版本1.2.19最新的稳定版本,现在它工作得非常好

问题示例v1.3.0 beta-14

工作示例v1.2.19稳定


我必须在ui-bootstrap-tpls-0.11.0.js中进行此更改,才能使其正常工作

 angular.module("template/typeahead/typeahead-popup.html", []).run(["$templateCache", function($templ
 $templateCache.put("template/typeahead/typeahead-popup.html",
-    "<ul class=\"dropdown-menu\" ng-if=\"isOpen()\" ng-style=\"{top: position.top+'px', left: positi
+    "<ul class=\"dropdown-menu\" ng-show=\"isOpen()\" ng-style=\"{top: position.top+'px', left: posi

将ng if更改为ng show修复了它

,IE 11已将其删除,safari建议忽略它。因此,考虑到自动完成的结束,这不是一个好的选择。表单autocomplete='off'仍然有效,但我仍然无法使用箭头键在列表中进行选择。这太令人费解了!我无法复制你的问题。请使用此plunk并告诉我您是否面临问题:使用此选项在浏览器中根据ng ui引导文档进行测试您不需要在代码中包含bootstrap.js它在plunk中工作,但在笔记本电脑上本地托管时不工作。谢谢你告诉我有关引导文档的事情!帮了我很多忙!顺便说一下,我还在服务器端使用Jade引擎。这也是问题吗?我发现了问题,但还不清楚。这与玉无关。我在常规设置中尝试过,但仍然没有得到任何亮点。我在调试器中注意到的是,在Plunker示例中,ul的自动完成项的“类”在被选中时被设置为活动,但在本地对我来说不是。选项确实在改变,但突出显示却没有改变。所以我的上下都在工作,但突出显示却没有。我仍然不知道为什么会发生这种情况。@Dinesh真正的问题是我使用的angular版本。我使用的是最新版本1.3.0,它显然有缺陷,并且在active index和ng mouseenter方面存在一些问题,因此没有将列表的索引设置为active。我现在使用的是1.2.19。谢谢你的帮助。谢谢你刚刚结束了我两天的搜索
<script src="https://code.angularjs.org/1.3.0-beta.14/angular.js"></script>
<script src="https://code.angularjs.org/1.2.19/angular.min.js"></script>
 angular.module("template/typeahead/typeahead-popup.html", []).run(["$templateCache", function($templ
 $templateCache.put("template/typeahead/typeahead-popup.html",
-    "<ul class=\"dropdown-menu\" ng-if=\"isOpen()\" ng-style=\"{top: position.top+'px', left: positi
+    "<ul class=\"dropdown-menu\" ng-show=\"isOpen()\" ng-style=\"{top: position.top+'px', left: posi