:) You were right. It was easy enough to use render :update and
replace_html with :partial to accomplish it.

I am however curious as to how we can do this using JSON. I started
reading about JSON for another feature I needed but I realised I dint
need JSON for it. I feel it would be a good exercise for me to
implement it in tackling this problem. Could you explain a little bit
more about the code you have shown me above or point me to where I can
find the documentation explaining this? From what I remember, JSON is
a format (Object Notation) to represent ActiveRecord objects (in
Rails) for JS to handle. But setting the header, responseJSON et all
is new to me.

Thanks Fred!


On Apr 8, 12:57 pm, Frederick Cheung <frederick.che...@gmail.com>
wrote:
> On Apr 8, 8:38 am, Ram <yourstruly.vi...@gmail.com> wrote:
>
> > Hi Fred,
>
> > Thanks for your response.
>
> > render :update
> > Ive got quite a few Ruby conditions and styling going in the js.erb
> > file im using now to display the contact information. And ive got more
> > possibilities than the 3 ive shown above in the controller. So this
> > might not be the right option for me. Right?
>
> I'm not sure this would be a problem - seems like a few calls to
> page.replace_html 'info', :partial => 'blah' would do it in the other
> cases.
>
>
>
> > observe_field callback
> > This might work for me. Right now, the only callbacks I have on the
> > observe_field are showing and hiding the spinner. I have never written
> > custom callbacks on Rails JS helpers. Could you help me through this?
>
> > So im guessing I should be having something like this
>
> > <%= observe_field 'contact_id', :frequency => 0.5, :update =>
> > 'info', :before => "Element.show('spinner')",
> >                 :success => "handle_contact_request(value);", :url =>
> > show_contact_path,:method =>:get,
> >                 :with => 'contact_id' %>
>
> Nearly. your success callback gets 2 thigns: response and
> responseJSON. responseJSON contains whatever JSON you put in the X-
> JSON header of your response. You callback can be as simple as
>
> check_for_redirect(json){
>   if(json && json.redirect)
>     page.location = json.redirect
>
> }
>
> and then pass :success => "check_for_redirect(responseJSON)". All you
> need to do is to set that header appropriately if you want a redirect
> to happen.
>
> Fred
--~--~---------~--~----~------------~-------~--~----~
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