2

我还没有看到这方面的任何文件..

如果我有

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

这行不通...

4

1 回答 1

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指出的那样 - 预输入选择仅适用于使用键盘而不是鼠标(可能是因为引导程序中的错误或者因为没有针对引导程序的最佳官方支持)

但是下面的代码片段似乎解决了这个问题:

$('ul.typeahead').live('mousedown', function(e) { e.preventDefault(); });
于 2013-02-10T16:12:30.910 回答