如何使用Twitter引导程序使用Best In Place

时间:2013-02-10 09:42:34

标签: ruby-on-rails-3 twitter-bootstrap best-in-place bootstrap-typeahead

我还没有看到任何文件......

如果我有

<%= 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列表

这不起作用......

1 个答案:

答案 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(); });