Override helper (observe_field) and put JS at the bottom


#1

Is it possible to override a helper function and put its javascripts at
the bottom (using yield)?

I tried the follows in helper:

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

In view

<%=yield :after_js%>

But it seems not working.


#2

Arthur C. wrote:

Is it possible to override a helper function and put its javascripts at
the bottom (using yield)?

I tried the follows in helper:

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

In view

<%=yield :after_js%>

But it seems not working.

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

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

Cool! I am getting A in yslow now :smiley: