javascript – 使用正则表达式以逗号分隔的rails自动完成标记

前端之家收集整理的这篇文章主要介绍了javascript – 使用正则表达式以逗号分隔的rails自动完成标记前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用旧的 auto_complete pluginacts as taggable on gem一起尝试基本上复制Stack Overflow本身的标记行为!我或多或少地做了这个 rails cast中描述的内容.对于单个标签,这很有用.但是,我真的希望这样做,以便每次用户输入空格或逗号(非常类似于Stack Overflow)时,自动完成将重新开始.我想有一些方法可以通过正则表达式来做到这一点,但我不知道如何将这种行为应用到text_field(我想用JavaScript来“重启”自动完成,但不可否认我相当弱谈到JavaScript.这就是我的观点:
  1. <%= text_field_with_auto_complete :business,:tags,{},{ :url => formatted_businesses_path(:js),:method => :get,:with => "'search=' + element.value" } %>

我的控制器非常简单,只需保存特定业务的标签即可.

如果有人能指出我正确的方向(因为我不知道如何去做)我会非常感激.

解决方法

我知道这是旧的,但为了重现这种行为,我使用 rails3-jquery-autocompleteacts-as-taggable-on.它们非常好地工作在一起.
  1. // Model
  2. class Foo < ActiveRecord::Base
  3. acts_as_taggable_on :tags
  4. end
  5.  
  6. // Controller
  7. class FoosController < ApplicationController
  8. autocomplete :tag,:name,:class_name => 'ActsAsTaggableOn::Tag'
  9. ...
  10. end
  11.  
  12. // Routes
  13. resources :foos do
  14. collection do
  15. get :autocomplete_tag_name
  16. end
  17. end
  18.  
  19. //View
  20. <% form_for :foo do |form| %>
  21. <%= form.label :tag_list,"Tags" %>
  22. <%= form.autocomplete_field :tag_list,autocomplete_tag_name_foos_path,:"data-delimiter" => ',' %>
  23. <% end %>

希望能帮助别人.

猜你在找的JavaScript相关文章