2010-12-11 109 views
1

j'utilisais prototype avec Rails 3, mais je me suis converti à jquery en utilisant:erreurs après la conversion d'une application Rails utiliser Jquery

rake rails:template LOCATION=http://github.com/lleger/Rails-3-jQuery/raw/master/jquery.rb 

comme suggéré ici https://github.com/lleger/Rails-3-jQuery

Mais après la conversion tout le javascript semble cassé Je reçois des erreurs comme:

erreur RJS:

ReferenceError: $$ is not defined

puis

$$("#notice").each(function(value, index) { 
value.hide(); 
}); 
Element.update("cart", "<div class=\"cart_title\">Your Cart</div>\n<table>\n <tr id=\"current_item\">\n <td>3&times;</td>\n <td>Programming Ruby 1.9</td>\n <td class=\"item_price\">$148.50</td>\n</tr>\n\n\n <tr class=\"total_line\">\n <td colspan=\"2\">Total</td>\n <td class=\"total_cell\">$148.50</td>\n </tr>\n\n</table>\n<!-- START_HIGHLIGHT -->\n<form method=\"get\" action=\"/orders/new\" class=\"button_to\"><div><input type=\"submit\" value=\"Checkout\" /></div></form>\n<!-- END_HIGHLIGHT -->\n<form method=\"post\" action=\"/carts/9\" class=\"button_to\"><div><input name=\"_method\" type=\"hidden\" value=\"delete\" /><input data-confirm=\"Are you sure?\" type=\"submit\" value=\"Empty cart\" /><input name=\"authenticity_token\" type=\"hidden\" value=\"6rsfHAqN1+p/Hb5/9QNxSFpXqmknSuUG2QtglirA6UM=\" /></div></form>\n"); 
$("current_item").visualEffect("highlight", {"startcolor":"#88ff88","endcolor":"#114411"}) 

; 

Quel peut être le problème possible?

Le problème que je pense est que les aides qui utilisent scriptaculous sont brisés. Rails 3 helpers utilisent scriptaculous. Quelle est la sortie est la plus grande question?

Répondre

0

Ces erreurs se rapportent à des fonctions Prototype fournit, mais jQuery ne fonctionne pas. Tout simplement, vous avez toujours le code javascript qui utilise Prototype, qui n'est plus fourni, d'où les erreurs.

+0

Oui, j'ai eu des effets that.Scriptaculous qui ont besoin d'un prototype ont cassé. Mais les assistants de Rails 3 les utilisent. Comment l'obtenir? – Arc

+0

@Arkid - "Le problème principal pour les développeurs de Rails qui voudraient essayer jQuery est qu'il finit par entrer en conflit avec la bibliothèque de prototypes lorsque vous commencez à utiliser les assistants" intégrés "de Rail pour le prototype Mais peut-être n'avez-vous pas besoin pour utiliser ces aides, car un nombre croissant de plugins jQuery commencent à fournir de plus en plus de fonctionnalités côté client élégantes. " - http://drnicwilliams.com/2006/08/23/ajax-on-rails-prototype-vs-jquery/ –