Thanks Marnen. I feel ok about how AJAX works perhaps I wasn't asking the question well enough. I did a little more digging and can show an example that might help clear out what I'm working to understand in Rails 3....
The goal, is to be able to inject html content into a contentPanel on a page w/o page refresh (like Facebook, clicking messages) In my case I want to inject the Books view into the contentPanel w/o the layout, so in the Books controller I added: def index respond_to do |format| format.html format.js { render :layout => false } end end Then in my application.js file, I have the following function being triggered: jQuery.ajaxSetup({ 'beforeSend': function(xhr) {xhr.setRequestHeader("Accept", "text/javascript")} }) $.ajax({ url: '/notes', success: function(data) { $('.contentCol').html(data); //alert('Load was performed.'); } }); I also added a index.js.erb file, right now it just says: You found me! What's strange is I want to inject the books view without the layout in the contentPanel div, so it doesn't seem right to be having that in a index.js.erb file..... Does this help? Can't wait to hear your feedback, I've been trying to tackle this one all morning. Thanks! On Sep 23, 11:13 am, Marnen Laibow-Koser <li...@ruby-forum.com> wrote: > nobosh wrote: > > On Sep 23, 8:37 am, Marnen Laibow-Koser <li...@ruby-forum.com> wrote: > >> > Any pointers, tips, tutorials? thanks! > > >> This is fairly simple Ajax. What part do you need help with? > > > Thanks Marnen. Right now I need helping understanding the end to end > > flow in Rails. I could use help with the following example.. Lets take > > Facebook. > > When you're on Facebook.com, and click MESSAGES, the URL changes to > > (facebook.com/?sk=messages) and then AJAX is used to download the HTML/ > > JS content which is injected with JavaScript into the content > > pannel... No browser refresh which is what I'm after. > > Apparently you need to understand how Ajax works. This has nothing to > do with Rails specifically. I'd advise finding a good Ajax tutorial > (don't know of one to recommend off the top of my head). > > Basically, the major concept behind Ajax is that JavaScript can tell > your browser make asynchronous HTTP requests. Your Web server will > process those requests just like any other HTTP request, but then the > JavaScript takes back over and processes whatever got returned from the > server. > > > > > My specific questions are: > > 1. For the content that is download via AJAX, is that content coming > > from a rails partial?... like > > (app>views>messages>_messagestable.html.erb > > That's usually what you'd want to do. You could also return JSON and > process it on the client side, if you're more interested in data > manipulation than display. > > > 2. Where should the JavaScript reside that knows to fetch the messages > > content and then inject the content into the content panel? (is that > > the application.js? > > Probably not. It depends on the structure of your application, but > you'll normally want a page-specific JS file to do this. > > > 3. Once the messages content (_messagestable.html.erb) is injected > > into the content panel, it will require new JavaScript functions > > specific to that content... Where should that live? > > Probably in the same page-specific JS file. Again, there's no one > answer; put it wherever your logic flow and refactoring dictate. > > And for the love of God, provide a graceful degradation path so that > people without JS can use as much of your app as possible. (Yes, in > 2010, there are still a surprising number of users who cannot support > JavaScript.) > > > > > Thanks > > Best, > -- > Marnen Laibow-Koserhttp://www.marnen.org > mar...@marnen.org > -- > Posted viahttp://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-t...@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.