Javascript 引导类型预选-不自动选择第一项吗?

Javascript 引导类型预选-不自动选择第一项吗?,javascript,coffeescript,twitter-bootstrap,typeahead,Javascript,Coffeescript,Twitter Bootstrap,Typeahead,我正在使用,它允许异步数据源和onselect事件。到目前为止,它对我来说工作得非常好,但是当用户从字段中签出,即没有主动选择下拉条目时,会触发onselect事件,在我的情况下,该事件会将用户重定向到另一个页面。如果用户没有单击,是否有任何方法可以阻止触发onselect事件?以下是迄今为止我在《咖啡脚本》中得到的内容: $(document).ready -> $('#inspection_name').typeahead( source: (typeahead, quer

我正在使用,它允许异步数据源和onselect事件。到目前为止,它对我来说工作得非常好,但是当用户从字段中签出,即没有主动选择下拉条目时,会触发onselect事件,在我的情况下,该事件会将用户重定向到另一个页面。如果用户没有单击,是否有任何方法可以阻止触发onselect事件?以下是迄今为止我在《咖啡脚本》中得到的内容:

$(document).ready ->
  $('#inspection_name').typeahead(
    source: (typeahead, query) ->
      $.ajax(
        url: "/inspections/search.json?name="+query
        success: (data) =>
          return_list = []
          $(data.results.inspections).each ->
            return_list.push("<span data-url='" + this.uri + "/edit'>" + this.name + ", " + this.town + "</span>") 

          typeahead.process(return_list)
      )

    onselect: (obj) =>
      window.location.href = $(obj).attr("data-url")
  )

最后,我回答了我自己的问题,并将调整放在以下要点中:


对于默认引导,这将起作用:

$.fn.typeahead.Constructor.prototype.render = function (items) {

var that = this;

items = $(items).map(function (i, item) {
  i = $(that.options.item).attr('data-value', item);
  i.find('a').html(that.highlighter(item));
  return i[0];
});

this.$menu.html(items);
return this;
};

在包含bootstrap.min.js之后的某个地方,所有的积分都应该归于@jrochkind,但为了更清楚,我想在这里给出答案

在bootstrap.js之后添加以下内容:


您可以在角度引导打印头中设置属性

typeahead-focus-first="false"

jQuery也有类似的选项

我现在已经回答了自己的问题。我对最初的要点做了一个小的编辑,以停止选项卡切换时的默认行为。谢谢,这个要点真的很有用。如果你把你的评论变成一个答案,我会把它投上去。谢谢你,我在上面做了一些扩展,让tab键在选项间循环:我使用的是标准的默认引导,这很有效,除了它还引入了一个bug,当我按ENTER键时,它不再执行搜索,我必须手动单击我的“提交”按钮。只找到此链接,该链接解释了我发现的上述问题以及如何正确解决问题。有关其他解决方案,请参阅我的。
typeahead-focus-first="false"