diff options
Diffstat (limited to 'railties/lib/generators/rails/app/templates/public/javascripts/jquery.compat.js')
-rw-r--r-- | railties/lib/generators/rails/app/templates/public/javascripts/jquery.compat.js | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/railties/lib/generators/rails/app/templates/public/javascripts/jquery.compat.js b/railties/lib/generators/rails/app/templates/public/javascripts/jquery.compat.js new file mode 100644 index 0000000000..38dcfad761 --- /dev/null +++ b/railties/lib/generators/rails/app/templates/public/javascripts/jquery.compat.js @@ -0,0 +1,34 @@ +jQuery(function ($) { + function evalAttribute(element, attribute) { + var el = $(element); + var attr = el.attr('data-' + attribute); + + if(attr) { + eval(attr); + } + } + + $('form[data-remote="true"]') + .live('before', function (e) { + evalAttribute(this, 'onbefore'); + }) + .live('after', function (e, xhr) { + evalAttribute(this, 'onafter'); + }) + .live('loading', function (e, xhr) { + evalAttribute(this, 'onloading'); + }) + .live('loaded', function (e, xhr) { + evalAttribute(this, 'onloaded'); + }) + .live('complete', function (e, xhr) { + evalAttribute(this, 'oncomplete'); + evalAttribute(this, 'on' + xhr.status); + }) + .live('success', function (e, data, status, xhr) { + evalAttribute(this, 'onsuccess'); + }) + .live('failure', function (e, xhr, status, error) { + evalAttribute(this, 'onfailure'); + }); +}); |