From 339aa6afcb08ba64d17c8cec4983bdf0cd459798 Mon Sep 17 00:00:00 2001 From: Quin Hoxie Date: Wed, 10 Feb 2010 00:42:32 -0800 Subject: [PATCH 1/3] Only support href as url on non-form elements --- src/rails.js | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) diff --git a/src/rails.js b/src/rails.js index 8e2e0d2..24f1cdc 100644 --- a/src/rails.js +++ b/src/rails.js @@ -8,8 +8,7 @@ document.observe("dom:loaded", function() { params = element.serialize(true); } else { method = element.readAttribute('data-method') || 'get'; - // TODO: data-url support is going away, just use href - url = element.readAttribute('data-url') || element.readAttribute('href'); + url = element.readAttribute('href'); params = {}; } -- 1.6.3.3 From 5a06bee4008b06744c2e7df350f5d2fafc048da3 Mon Sep 17 00:00:00 2001 From: Quin Hoxie Date: Wed, 10 Feb 2010 00:43:20 -0800 Subject: [PATCH 2/3] Treat data-remote as a boolean attribute in selectors --- src/rails.js | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/rails.js b/src/rails.js index 24f1cdc..edac528 100644 --- a/src/rails.js +++ b/src/rails.js @@ -39,7 +39,7 @@ document.observe("dom:loaded", function() { return false; } - var element = event.findElement("a[data-remote=true]"); + var element = event.findElement("a[data-remote]"); if (element) { handleRemote(element); event.stop(); @@ -61,7 +61,7 @@ document.observe("dom:loaded", function() { input.value = input.readAttribute('data-disable-with'); }); - var element = event.findElement("form[data-remote=true]"); + var element = event.findElement("form[data-remote]"); if (element) { handleRemote(element); event.stop(); -- 1.6.3.3 From 4b8ae92c11c3ddaae00f9da2810827bf7750b7d9 Mon Sep 17 00:00:00 2001 From: Quin Hoxie Date: Wed, 10 Feb 2010 00:53:37 -0800 Subject: [PATCH 3/3] Remove event.element() in favor of event.findElement() --- src/rails.js | 9 +++++---- 1 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/rails.js b/src/rails.js index edac528..faccea6 100644 --- a/src/rails.js +++ b/src/rails.js @@ -33,7 +33,7 @@ document.observe("dom:loaded", function() { } $(document.body).observe("click", function(event) { - var message = event.element().readAttribute('data-confirm'); + var message = event.findElement().readAttribute('data-confirm'); if (message && !confirm(message)) { event.stop(); return false; @@ -48,13 +48,14 @@ document.observe("dom:loaded", function() { // TODO: I don't think submit bubbles in IE $(document.body).observe("submit", function(event) { - var message = event.element().readAttribute('data-confirm'); + var element = event.findElement(), + message = element.readAttribute('data-confirm'); if (message && !confirm(message)) { event.stop(); return false; } - var inputs = event.element().select("input[type=submit][data-disable-with]"); + var inputs = element.select("input[type=submit][data-disable-with]"); inputs.each(function(input) { input.disabled = true; input.writeAttribute('data-original-value', input.value); @@ -69,7 +70,7 @@ document.observe("dom:loaded", function() { }); $(document.body).observe("ajax:complete", function(event) { - var element = event.element(); + var element = event.findElement(); if (element.tagName.toLowerCase() == 'form') { var inputs = element.select("input[type=submit][disabled=true][data-disable-with]"); -- 1.6.3.3