Well the "page fragment"  is a div with a partial in it.  I need to be able
to make a regular call and update the div with the partial.  I have a select
box used to go to a page.  I need to be able to change out what is in the
div.

<%= select(:node, :id, $shelves,{:prompt =>'Select Equipment'},{ :onchange
=> "document.location.href = '/buildshelf/' + this.value "} ) %>

This div:
<div id="shelfcards"> </div>

has the partial for the cards in the shelf.

On Tue, Feb 24, 2009 at 4:32 PM, Frederick Cheung <
[email protected]> wrote:

>
>
> On 24 Feb 2009, at 18:32, Chris Habgood wrote:
>
> > Not an ajax call.  Does it only work for an ajax call?
>
> Yes. if you use render :update it returns some javascript. The
> prototype (and jquery etc.) libraries know to execute that javascript,
> but just a generic browser page load doesn't
>
> If you want to replace a page fragment you have to use an ajax request
> (although you don't have to use render :update):
>
> if you have link_to_remote 'Click me', :update => 'some_id', :url =>
> {:action => 'foo'}
>
> and then
>
> def foo
>   render ...
> end
>
> Then the results of that render will get stuck in the page element
> with id some_id. You only need the render :update / rjs mechanism to
> update multiple things on the page.
>
> Fred
>
>
> >
> >
> > On Tue, Feb 24, 2009 at 12:31 PM, Frederick Cheung <
> [email protected]
> > > wrote:
> >
> >
> > On 24 Feb 2009, at 18:14, Me wrote:
> >
> > >
> > > I have this div in my application.rhtml file:
> > >
> > > <div id="shelfcards"> <%= render :partial => 'ericssoncards' %></
> > div>
> > >
> > > When I go to another view I am doing this:
> > >
> > > def turin2000
> > >               render :update do |page|
> > >                       page[:shelfcards].replace_html :partial =>
> > 'turin2000'
> > >               end
> > >  end
> > >
> >
> > What does the think making the ajax request look like ?
> >
> > Fred
> > > I get this for an output:
> > >
> > > try {
> > > $("shelfcards").update("<fieldset style='width: 400px;'>
> > > \n<legend>Select your card type</legend>\n\n\t<div id='oc192'
> > > class='card' >OC-192</div>\n\t<div id='oc48' \t\tclass='card'
> > >OC-48</
> > > div>\n\t<div id='oc12' \t\tclass='card' >OC-12</div>\n\t<div
> > id='oc3'
> > > \t\tclass='card' >OC-3</div><br /><br />\n\t<div id='28pds1'
> > > \tclass='card' >28P DS-1</div><br /><br />\n\t<div id='egcm' \t
> > > \tclass='card' >EGCM</div><br /><br />\n\t<div id='gbeth'
> > > \tclass='card' >GB ETH</div><br /><br />\n\t<div id='vt5g' \t
> > > \tclass='card' >VT 5G</div><br /><br />\n</fieldset> \t\t");
> > > } catch (e) { alert('RJS error:\n\n' + e.toString()); alert('$
> > > (\"shelfcards\").update(\"<fieldset style=\'width: 400px;\'>\
> > > \n<legend>Select your card type</legend>\\n\\n\\t<div id=\'oc192\'
> > > class=\'card\' >OC-192</div>\\n\\t<div id=\'oc48\' \\t\\tclass=
> > \'card
> > > \' >OC-48</div>\\n\\t<div id=\'oc12\' \\t\\tclass=\'card\' >OC-12</
> > > div>
> > > \\n\\t<div id=\'oc3\' \\t\\tclass=\'card\' >OC-3</div><br /><br />\
> > \n\
> > > \t<div id=\'28pds1\' \\tclass=\'card\' >28P DS-1</div><br /><br />\
> > \n\
> > > \t<div id=\'egcm\' \\t\\tclass=\'card\' >EGCM</div><br /><br />\\n\
> > > \t<div id=\'gbeth\' \\tclass=\'card\' >GB ETH</div><br /><br />\\n\
> > > \t<div id=\'vt5g\' \\t\\tclass=\'card\' >VT 5G</div><br /><br />\
> > \n</
> > > fieldset> \\t\\t\");'); throw e }
> > >
> > > If I put this partial inside the div manually it works fine.
> > >
> > > What causes this?
> > > >
> >
> >
> >
> >
> >
> > >
>
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
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 [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to