rails3-jquery-autocomplete plugin? Dường như nó không hỗ trợ nhiều tính năng tự động hoàn thành, bạn cần phải sửa đổi mã plugin !! Nếu bạn nhấn mạnh vào những ý tưởng cũ của mình, hãy làm theo các bước của tôi.
- chạy
bundle show rails3-jquery-autocomplete
để có được các plugin làm việc directroy
- đời /lib/autocomplete.rb
thay đổi define_method
như thế này:
define_method("autocomplete_#{object}_#{method}") do
arr = params[:term].split(",")
unless params[:term] && params[:term].empty?
items = object.to_s.camelize.constantize.where(["LOWER(#{method}) LIKE ?", "#{arr[arr.size-1]}%"]).limit(limit).order(order)
else
items = {}
end
render :json => json_for_autocomplete(items, method)
cuối
sửa đổi autocomplete-rails.js
như này function split(val) { return val.split(/,\s*/); } function extractLast(term) { return split(term).pop(); } $(document).ready(function(){ $('input[autocomplete]').each(function(i){ $(this).autocomplete({ source: $(this).attr('autocomplete'), focus: function() { return false; }, select: function(event, ui) { var terms = split(this.value); // remove the current input terms.pop(); // add the selected item terms.push(ui.item.value); // add placeholder to get the comma-and-space at the end terms.push(""); this.value = terms.join(","); return false; } }); }); });
khởi động lại máy chủ của bạn và cố gắng
!! hãy nhớ rằng bạn nên sao lưu tự động hoàn thành.rb để tránh ghi đè sau khi bạn chạy cài đặt gói.
Chúc may mắn!
Bạn có thể đăng mã mà bạn đã thử không? và sau đó có gì sai với đầu ra? –
Bạn có cần sử dụng plugin rails không? Tôi cho rằng việc thêm jquery-ui vào javascripts của bạn sẽ dễ dàng hơn và cài đặt nó trong javascripts. – skalee