Pour le code Ruby, ça va me prendre plus de temps pour relire d'où mon
encouragement à commencer par t'intéresser au JavaScript entre temps.
Ceci dit, si tu as peur que jQuery soit trop hardcore, je peux dors et déjà
te rassurer : la doc est super claire, les tutoriels sont simples et sympa
et permettent d'être rapidement à l'aise passé la surprise de l'architecture
(l'architecture de jQuery est surprenante, mais elle est géniale), et
surtout le "vocabulaire" de jQuery est très simple (comparé à prototype) et
s'appuie beaucoup sur les css pour sélectionner des éléments dans la page (
$(#id_de_mon_element') c'est quand même plus simple à écrire et sympa à lire
que document.getElementById('id_de_mon_element'), et pour un sélecteur un
peu compliqué genre $('#menu > li.selected > a') sans jQuery j'ose même pas
imaginer sans jQuery ).
Donc pour le code Ruby à suivre, dès que j'ai eu le temps de lire le code on
en cause.
Michel Belleville
2009/9/24 Emma Nemo <[email protected]>
>
> Michel Belleville wrote:
> > Houlà, ça m'a l'air un peu emmêlé tout ça, mais au moins ça fait plaisir
> > d'avoir quelqu'un qui pose une question avec des informations précises
> > et
> > des bouts de code.
> >
> > Déjà, en regardant ton bout de code JavaScript, une question me saute au
> > neurone : pourquoi faire du JavaScript hardcore comme ça ? Ce serait
> > plus
> > simple en utilisant un bon petit framework (si tu ne veux pas trop
> > t'éloigner de Rails : prototype ; sinon je te recommande le bien
> > meilleur et
> > plus simple jQuery). Utiliser une framework t'évitera de tomber dans les
> > nombreux nids-de-poule que l'AJAX réserve au débutant, et accroîtra ta
> > productivité.
> >
> > Par exemple, essayons de traduire le bout de code JavaScript que tu nous
> > a
> > posé là en jQuery :
> > function sendQ() {
> > var selected = $('#f').value() // récupère le select dont l'id est "f"
> > et
> > lit la valeur sélectionnée
> > $('#bj').load('/diet', { 'ou': selected }); // fait une requête AJAX
> > vers
> > l'url /diet en méthode get avec la valeur selected dans le paramètre
> > 'où' et
> > injecte le résultat dans l'élément dont l'id est 'bj'
> > }
> >
> > Ca peut aussi marcher avec prototype mais c'est plus compliqué à écrire.
> > Pour toute information sur jQuery : http://jquery.com/ (oh surprise)
> >
> > Généralement les problèmes AJAX proviennent de :
> >
> > - JavaScript mal écrit (très probable) - utiliser de bons outils
> > (Firefox
> > avec Firebug) pour les résoudre à posteriori, utiliser de bons outils
> > (jQuery, prototype, mootools, etc.) pour les éviter à priori
> > - CSS mal écrite (probable) - utiliser de bons outils (Firefox avec
> > Firebug) pour les résoudre à posteriori, ne pas promettre la lune
> > pour ne
> > pas se faire piéger par l'incompatibilité des navigateurs (Internet
> > Explorer)
> > - problème côté serveur (moins probable) - vérifier que l'on a pas
> > oublié
> > un respond_to ou une vue spécifique, ou si on a oublié de zapper le
> > layout
> >
> > Sinon je vais jeter un coup d'oeil plus précis sur ton code pendant la
> > soirée, voir si je vois un autre problème que JavaScript.
> >
> > Michel Belleville
> >
> >
> > 2009/9/24 Emma Nemo <[email protected]>
>
>
> Bonsoir et merci beaucoup de votre réponse,
>
> En fait je suis certaine que si l'on refactorise les fonction js en jq,
> ça va jouer,
> le souci c'est le traitement de ma requête dans mon code ruby du
> controller ...
>
> le java est neutre,
> en revanche oui il me semble que ça a l'air plus sympa les framework,
> mais pour les utiliser faut savoir les lire, pour les lire faut savoir
> écrire et pour écrire du javascript raccourci et apprendre les classes
> du framework me semblen tout aussi hardcore pour moi tout au début
> :blush:
>
> :-)
>
> Moi aussi je vais jetter un coup d'aoil sur la doc pour voir si comment
> je peux m'éconnomiser des lignes de code et faire moins "old school"
> YEP :-)
> Au fait il manque le diet.erb mais y' a que le yieldage dedans pour la
> span bj
> --
> Posted via http://www.ruby-forum.com/.
>
> >
>
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse
[email protected]
-~----------~----~----~----~------~----~------~--~---