I am running Rails 1.10 and wanted to check out the RJS templates.
Rails doesn’t seem to find them.
I did issue the rake comment update_javascripts and that did not correct
the problem. RJS is part of 1.1 right?
Any ideas?
Thanks.
I am running Rails 1.10 and wanted to check out the RJS templates.
Rails doesn’t seem to find them.
I did issue the rake comment update_javascripts and that did not correct
the problem. RJS is part of 1.1 right?
Any ideas?
Thanks.
Arch S. wrote:
I am running Rails 1.10 and wanted to check out the RJS templates.
Rails doesn’t seem to find them.I did issue the rake comment update_javascripts and that did not correct
the problem. RJS is part of 1.1 right?Any ideas?
Thanks.
Apparently I was still on 1.0. So I am getting the RJS templates
recgonized now, however I am now getting weird output:
page display:
alert(‘RJS error:\n\n’ + e.toString()); alert(‘new
Insertion.Bottom(“test_1”, "Fox
");\nnew Effect.Highlight(“list”,{duration:3});’); throw e }
controller:
def take_test2
end
rjs template:
page.insert_html :bottom, ‘test_1’,
content_tag(“li”, “Fox”)
page.visual_effect :highlight, ‘list’, :duration => 3
I did some more testing. Even turned debugging off for RJS templates
but still I am getting the source displayed on my page.
So for this RJS template:
page.insert_html :bottom, “test_1”, :partial => “take_test”
page.visual_effect :highlight, “test_1”, :duration => 10
post text
I am getting this displayed in the browser:
new Insertion.Bottom(“test_1”, "
\n
Post
\n
post text
\n
"); new Effect.Highlight(“test_1”,{duration:10});
Arch S. wrote:
I did some more testing. Even turned debugging off for RJS templates
but still I am getting the source displayed on my page.So for this RJS template:
rjs template
page.insert_html :bottom, “test_1”, :partial => “take_test”
page.visual_effect :highlight, “test_1”, :duration => 10rhtml partial
Post
post text
I am getting this displayed in the browser:
new Insertion.Bottom(“test_1”, "
\n
Post
\npost text
\n
"); new Effect.Highlight(“test_1”,{duration:10});
When you link to the action which uses RJS, use link_to_remote instead
of link_to.
Jeff C.man
Jeff C.man wrote:
When you link to the action which uses RJS, use link_to_remote instead
of link_to.Jeff C.man
Yep I am using this call:
<%= link_to_remote("Take Kwiz RJS",:update =>"test_1",:url =>{ :action => "take_test2", :id => test.id}) %>
On Apr 16, 2006, at 11:00 PM, Alain R. wrote:
Alain
Did you make sure to put the <%= javascript_include_tag :defaults %
in the head of the page getting served?
-Ezra
Arch
>
<%= link_to_remote(“Take Kwiz RJS”,:update
=>“test_1”,:url =>{
> :action => “take_test2”, :id => test.id}) %>
To summarize, your RJS ends up as plain test in your web page instead of
being inserted and executed.
Don’t you’re have a filter somewhere that sets the content type to text?
Alain
Alain R. wrote:
Arch
><%= link_to_remote(“Take Kwiz RJS”,:update
=>“test_1”,:url =>{
> :action => “take_test2”, :id => test.id}) %>
>To summarize, your RJS ends up as plain test in your web page instead of
being inserted and executed.
Don’t you’re have a filter somewhere that sets the content type to text?Alain
Correct. The content type is being set to text in my header:
I’ve also tried
And that did not help either.
Arch S. wrote:
Jeff C.man wrote:
When you link to the action which uses RJS, use link_to_remote instead
of link_to.Jeff C.man
Yep I am using this call:
<%= link_to_remote("Take Kwiz RJS",:update =>"test_1",:url =>{ :action => "take_test2", :id => test.id}) %>
Try removing the :update parameter from your link_to_remote call.
I believe what’s happening is that link_to_remote is sending the result
of the call into the DIV “test_1”, like it would if you’d called a
partial. But since you’re dealing with RJS, your RJS calls will specify
which DIV to update.
Jeff C.man
Ezra Z. wrote:
On Apr 16, 2006, at 11:00 PM, Alain R. wrote:
Alain
Did you make sure to put the <%= javascript_include_tag :defaults %
in the head of the page getting served?
-Ezra
Yes, here is my layout:
Rails Application <%= stylesheet_link_tag "main", :media => "all" %> <%= javascript_include_tag :defaults %>Jeff C.man wrote:
Try removing the :update parameter from your link_to_remote call.
I believe what’s happening is that link_to_remote is sending the result
of the call into the DIV “test_1”, like it would if you’d called a
partial. But since you’re dealing with RJS, your RJS calls will specify
which DIV to update.Jeff C.man
That was it! Damn this one was really throwing me.
Basically I had my whole app working with partials but wanted to try the
RJS templates in 1.1.0, so the :udpate parameters were everywhere and
thus none of my templates were working.
What I don’t understand though is the RJS template was still being hit .
. . oh wait I see . . . it was treating the the code block as the input
and not actually running the code. Right?
Arch S. wrote:
Jeff C.man wrote:
Try removing the :update parameter from your link_to_remote call.
I believe what’s happening is that link_to_remote is sending the result
of the call into the DIV “test_1”, like it would if you’d called a
partial. But since you’re dealing with RJS, your RJS calls will specify
which DIV to update.Jeff C.man
That was it! Damn this one was really throwing me.
Basically I had my whole app working with partials but wanted to try the
RJS templates in 1.1.0, so the :udpate parameters were everywhere and
thus none of my templates were working.What I don’t understand though is the RJS template was still being hit .
. . oh wait I see . . . it was treating the the code block as the input
and not actually running the code. Right?
I believe that’s it–it was taking the JavaScript generated by the RJS
template as the content and updating the specified DIV with it–rather
than executing the JavaScript as code.
I got confused by this at the start myself.
Jeff
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.
Sponsor our Newsletter | Privacy Policy | Terms of Service | Remote Ruby Jobs