O'Reilly logo

Rails: Up and Running, 2nd Edition by Curt Hibbs, Lance Carlson, Bruce Tate

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 6. Ajax

A few years ago, the Rails support for Ajax was revolutionary. Now, good Ajax support is expected from any web framework. Ajax is a technique for building web pages that are more interactive and dynamic. To use it, you’ll use JavaScript libraries to communicate with the server at any time, and the web page need not be frozen while waiting for a response. Rails will simplify Ajax by using helpers to generate JavaScript code, so that in the typical case, you won’t use JavaScript at all.

Ajax applications have a few major differences from typical web apps. First, any web page can communicate with the server at any time, and not just by submitting forms and following links. Second, you can update any part of a page at any time. Users get a more responsive site with immediate feedback. Even though using Ajax techniques usually requires significantly more sophisticated design and implementation skills, the benefits to the end user are so great that Ajax-enabled web applications are becoming the rule, not the exception. Fortunately, Rails makes Ajax so simple that, for typical cases, using Ajax is almost as easy as not using it.

How Rails Implements Ajax

Rails has a simple, consistent model for how it implements Ajax operations. Once the browser renders the initial web page, different user actions cause it to display a new web page (like any traditional web application) or trigger an Ajax operation:

Some trigger fires

This trigger could be the user clicking on a button or link, ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required