【发布时间】:2014-07-13 21:21:24
【问题描述】:
我正在尝试在我的视图文件 index.html.erb 中包含以下代码的搜索文本字段上实现自动完成
<%= form_tag search_path, method: :get do %>
<p>
<%= text_field_tag :query, params[:query], :id => 'autocomplete' %>
<%= submit_tag "Search", name: nil %>
</p>
<% end %>
我在我的模型中包含了以下方法
def self.query_matches(term)
tire.search do
query {string "query:#{term}"}
end
end
和控制器如下
def autocomplete
results = Univ.query_matches(params[:term])
render :json => results, :callback => params[:callback]
end
我在 js 文件夹中的 application.js 文件中包含了 jQuery-ui。但是,我看不到自动完成功能在我的视图中运行。
用于此的jQuery im如下
jQuery ->
$("#autocomplete").autocomplete ({
source: function(request,response) {
jQuery.ajax({
url: "http://localhost:3000/univ/autocomplete.json",
dataType: "jsonp",
data: {
term: request.term
},
success: function(data){
var rows: [];
for( var i = 0; i< data.length; i++){
rows.push({data[i].query,value:data[i].query});
}
response(rows);
}
});
}
});
谁能建议我哪里出错了?
谢谢!
【问题讨论】:
标签: javascript ruby-on-rails ruby-on-rails-3 ruby-on-rails-4 autocomplete