具有auto_complete的字段

时间:2013-09-03 06:15:14

标签: ruby-on-rails ruby ajax autocomplete

newbe问题。

我继承了一个rails项目并被要求更改一些代码,但我在Ruby和Rails方面的经验很少(我是一个带有PHP后台开发人员的Objective-c)

所以我必须要做的第一件事是具有自动完成模式的文本字段。实际上我的代码有自动完成文本字段的代码:

registration_controller.rb

    def auto_complete_for_training_title
    puts "auto_complete_for_training_title"

    current_locale = params[:locale].to_s
    if current_locale == 'en' then
      if current_user.member then
        Locale.set current_user.member.written_language
      else
        Locale.set 'fr'
      end
    end

    @trainings = Training.find(:all, :conditions => ["((title LIKE ? OR fso_id LIKE ?) and is_private = 0", '%' + params[:training][:title] + '%', '%' + params[:training][:title] + '%'])
    puts @trainings.count
    render :partial => 'complete_ajax_own_function_training'
   end

在视图中,文本字段的创建方式如下:

<% form_for :sortRegistration, { :url => { :action => 'index'} } do |f| %>

    <p><label><%= "Display registrations by training".t %> :</label>
    <%= text_field_with_auto_complete :training, :title, { :size => 50, :tabindex => 1 }, 
                    { :select => 'mon_titre',
                      :after_update_element => "function(element,val)
                       {
                         var nodes = val.select(['.value_title']) || [];
                         if(nodes.length>0)
                            {
                            $('sortRegistration_training_id').value = Element.collectTextNodes(nodes[0], 'value_title');
                            }
                        }"
                    }
    %></p>

<input id="sortRegistration_training_id" name="sortRegistration[training_id]" type="hidden" size="20" value="" /> 

<% end %>

如果我复制/粘贴代码,只有一个textField正常工作,我试图改变一些参数,但仍然没有改变。

P.S。正如我所说,我是RoR的新手,我不知道你是否需要更多代码来帮助我,请随时提出更多问题,我会编辑我的问题

0 个答案:

没有答案