Arthur Chan wrote:
> Is it possible to override a helper function and put its javascripts at
> the bottom (using yield)?
> 
> I tried the follows in helper:
> <code>
>   # override observe field to put js at the bottom
>   def observe_field(field_id, options = {})
>     if @layout_options
>       content_for :after_js do
>         super(field_id, options )
>       end
>     else
>       super
>     end
>   end
> 
> </code>
> 
> In view
> 
> <code>
> <%=yield :after_js%>
> </code>
> 
> But it seems not working.

Oops, I found the problem. I should not return anything when I put 
things into content_for, so

<code>
  def observe_field(field_id, options = {})
    #super
    #return
    if @layout_options
      content_for :after_js_ready do
        super(field_id, options )
      end
      return "" # ****** don't return immediate results****
    else
      super
    end
  end
</code>


Cool! I am getting A in yslow now :D


-- 
Posted via http://www.ruby-forum.com/.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com
To unsubscribe from this group, send email to 
rubyonrails-talk+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to