Rails3 jQuery Autocomplete
在Rails 3中使用jQuery Autocomplete,你需要首先确保你的项目中包含了jQuery和jQuery UI库。你可以通过gem来安装jQuery,例如使用jquery-rails
gem。
在Gemfile中添加以下行:
gem 'jquery-rails'
- 运行
bundle install
来安装gem。 在
application.js
中包含jQuery和jQuery UI:// //= require jquery //= require jquery_ujs //= require jquery.ui.all //= require autocomplete
在
application.css
中包含jQuery UI的样式:*= require jquery.ui.all
创建一个新的Autocomplete控制器:
class AutocompleteController < ApplicationController def index @results = YourModel.where("column LIKE ?", "%#{params[:term]}%") render json: @results.map(&:column) end end
在
routes.rb
中添加路由:get 'autocomplete/index'
在视图中,使用Autocomplete:
<%= text_field_tag :autocomplete, '', 'data-autocomplete-source' => autocomplete_index_path %>
在
application.js
中添加Autocomplete初始化代码:$(function() { $( "#autocomplete" ).autocomplete({ source: function(request, response) { $.ajax({ url: "<%= autocomplete_index_path %>", dataType: "json", data: { term: request.term }, success: function(data) { response(data); } }); }, minLength: 2 }); });
确保替换YourModel
和column
为你的模型和需要自动完成的字段。这样就设置了一个基本的Autocomplete功能,用户在文本框中输入至少两个字符时,会从数据库中查找相应的记录并提供自动完成的建议。
评论已关闭