我还没有看到任何文件......
如果我有
<%= best_in_place @user, :city, type=> :input, %>
我需要包含data-provide =“typeahead”
<%= best_in_place @user, :city, type=> :input,:data => {:provide => "typeahead"} %>
并包含来源
<%= best_in_place @user, :city, :type=> :input, :data => {:provide => "typeahead", :source => City.getcities.to_json} %>
假设City.getcities.to_json
返回带有城市名称的正确json列表
这不起作用......
答案 0 :(得分:4)
使用:data
选项,您可以在生成的data-
上设置span
属性,而不是input
本身。
如果要在生成的input
元素上添加属性,则需要使用:html_attrs
选项:
<%= best_in_place @user, :city, :type=> :input,
:html_attrs => {:'data-provide' => "typeahead",
:'data-source' => City.getcities.to_json} %>
然而 - 正如@Nick Ginanto指出的那样 - 先行选择只适用于使用键盘而不是鼠标(可能是因为bug in bootstrap或因为no official support最好引导的地方)
但以下代码段似乎解决了这个问题:
$('ul.typeahead').live('mousedown', function(e) { e.preventDefault(); });