Skip to content
This repository has been archived by the owner. It is now read-only.
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Rails Behaviors (Deprecated)

Rails Behaviors implements the data-* behaviors generated by Rails 3.x.

This is an alternative to jquery-ujs. First, it is all CoffeeScript goodness — well, that's mostly good for me! Second, it is written in a modular fashion. This makes it possible to cherry pick the components you need and replace specific functionaly without having to rewrite the entire library. Third, it uses built-in global ajax events rather than adding its own. O, one more thing, Zepto.


jQuery 1.7.2+ or Zepto 0.8+

You'll need Sprockets 2 if you want to use the gem version.


rails-behaviors is distributed through the bower package manager.

bower install rails-behaviors


For testing you will need:

  • Ruby 1.9.3+
  • Bundler (gem install bundler)
bundle install
bundle exec rackup -E test ./test/
# now open the browser at http://localhost:9292

Migrating from jquery-ujs

This library handles all the data-* behaviors defined in Rails, so it is roughly feature for feature identicial in your Views.

The differences are in the JavaScript.

  1. There are no ajax:* events. jQuery already has global ajax events built in, so there is no point in duplicating that functionality. Doing a find and replace for "ajax:" events should give you a good start. You're looking to replace ajax:success with ajaxSuccess, ajax:error with ajaxError, etc.
  2. There are no global configuration options. Theres no equivalent for $.rails. You probably should have never used that in the first place.

NOTE: You cannot use rails-behaviors and jquery-ujs at the same time.


See for a markup and event reference.



$ git clone git://
$ cd rails-behaviors/
$ bundle install

Run tests:

$ rackup -p 3000 test/
$ open http://localhost:3000/


Copyright © 2011 Joshua Peek <>

Rails Behaviors is distributed under an MIT-style license. See LICENSE for details.

You can’t perform that action at this time.