typeahead.js 获取选定的数据

Posted

技术标签:

【中文标题】typeahead.js 获取选定的数据【英文标题】:typeahead.js get selected datum 【发布时间】:2013-08-03 21:17:18 【问题描述】:

我正在尝试使用 Twitter typeahead.js 在选择后返回一个数据。根据我对文档的理解,代码应该类似于

$('.selector').typeahead(
  name: 'identifier',
  local: localObjectsArray
).on('autocompleted', function(item)
    alert(JSON.stringify(item));
);

但是这不起作用。检测 typeahead 事件的正确方法是什么?

【问题讨论】:

【参考方案1】:

选择后,需要typeahead:selected:

$('.selector').typeahead(
    name: 'identifier',
    local: localObjectsArray
).on('typeahead:selected', function (obj, datum) 
    console.log(obj);
    console.log(datum);
);

希望对你有帮助。

【讨论】:

这是一个很好的提示,但可能应该编辑为使用 .on() 而不是 .bind() 参见***.com/questions/8065305/… 我认为使用.on() 是多余的,当.bind() 被弃用时我会更新答案。 很公平,但只是为了记录,“从 jQuery 1.7 开始,.on() 方法是附加事件处理程序的首选方法”来自api.jquery.com/bind 我的从来没有“选择”附加,所以我不能使用这种方法......到处寻找,找不到解决我的问题的方法。一开始似乎很少使用 typeahead.js。如果你能在这里帮助我,请告诉我,@Hieu ***.com/questions/24813018/… 请注意,自定义预输入事件现在是typeahead:select,而不是typeahead:selected。我不确定何时进行此更改,但从 v0.11.1 开始,typeahead.selected 未定义。文档反映了这一点:github.com/twitter/typeahead.js/blob/master/doc/…

以上是关于typeahead.js 获取选定的数据的主要内容,如果未能解决你的问题,请参考以下文章

Twitter Typeahead.js - 选择时删除数据

尝试使用 typeahead.js 和 php 和 Ajax 获取 id 和 value

使用 Django 通过远程数据提高 Twitter 的 typeahead.js 性能

Typeahead.js 不显示下拉菜单

TypeAhead.js 和 Bloodhound 显示奇数​​个结果

添加一些 html 元素后,typeahead 不会从表中获取数据