如何限制提前输入选项以从键盘中选择?

时间:2017-09-19 10:59:07

标签: javascript jquery html angularjs typeahead.js

我输入的类型如下,

<input
  typeahead-template-url="app/templates/type-a-head-item.html"
  type="text"
  ng-model="selectedDisease"
  search-head="powerSearch"
  typeahead-loading="loadingLocations"
  typeahead-wait-ms="200"
  typeahead-min-length="0"
  placeholder="Disease, Procedure or Medicine"
  typeahead="match as match._source.name for match in getDiseases($viewValue)"
  typeahead-focus-first="false"
  typeahead-editable="false" 
  typeahead-loading="loadingDiseases"
  class="form-control input-lg ng-pristine ng-untouched ng-invalid ng-invalid-required magnifyInput Bcolor"
  typeahead-on-select="searchDoctors()"
  aria-autocomplete="list"
  aria-expanded="false"
  aria-owns="typeahead-12-6891">

我只想从下拉列表中选择该选项,而不是通过键盘输入选择它。我尝试了很多jQuery的方法但没有工作。任何人都可以建议我帮忙。谢谢。

$(document).keypress(function(e) {
    if(e.which == 13) {
        alert('You pressed enter!');
    }
});

1 个答案:

答案 0 :(得分:0)

添加此属性应达到您想要的行为:

typeahead-should-select="false"

来自docs

  

typeahead-should-select($ event)(默认值:null)

     

当可能触发选择的键盘事件发生时执行的回调。   仅当此函数返回true时才会进行选择。