Ruby Forum Rails France > RJS et Ajax.updater

Posted by Frédéric Logier (Guest)
on 17.03.2008 17:27
(Received via mailing list)
Salut,

j'ai une page qui nécessite un RJS afin de mettre à jour une div lorsque
l'utilisateur sélectionne un filtre dans un <select>

Le problème est que cette même page est mise à jour en JS avec un
Ajax.updater toutes les 30 secondes. Or on ne peut pas mixer RJS et
Ajax.updater, ce que je confirme car lorsque l'Ajax.updater met à jour
la div, celle-ci affiche le JS au lieu de l'interpréter.
Et cf le PDF sur RJS de O'Reilly :
link_to_remote(nom, options = {}, html_options = {})
   C'est le moyen le plus simple de réaliser une requête Ajax avec
Rails. link_to_remote() est un assistant qui génère un lien
   hypertexte qui va lui-même lancer une requête Ajax lorsque l'on
clique dessus. Rails génère alors la méthode Ajax.Request
   ou Ajax.Updater dans l'événement onclick() d'une balise <a>, en
fonction de la présence ou non de l'option :update dans
   l'appel de link_to_remote(). Pour les besoins de RJS, vous ne devriez
pas utiliser l'option :update dans la mesure où l'objet
   Ajax.Updater de Prototype attend une réponse HTML tandis que RJS
retourne une réponse en JavaScript. Si vous rencon-
   trez d'étranges problèmes, avec des éléments de votre réponse RJS
apparaissant sur la page, vous utilisez probablement
   l'option :update à l'intérieur de votre modèle RJS.


Il y a t-il une solution simple, à part faire un Ajax.updater toutes les
secondes ?
Posted by Frédéric Logier (Guest)
on 17.03.2008 17:57
(Received via mailing list)
Bon en fait dans l'observer du select suffit de mettre un :update sur la
div et virer le RJS...

Le lundi 17 mars 2008 à 17:27 +0100, Frédéric Logier a écrit :