Bonjour à tous,
J'aimerais savoir quel est le meilleur moyen de trier un tableau html sur chaque colonnes (sans faire d'ajax), le tri devra ce faire de maniere croissante ou décroissante;
merci pour votre aide
Bonjour à tous,
J'aimerais savoir quel est le meilleur moyen de trier un tableau html sur chaque colonnes (sans faire d'ajax), le tri devra ce faire de maniere croissante ou décroissante;
merci pour votre aide
sans faire d'AJAX, ça veut dire que tu recharges la page à chaque fois, mais c'est pas grave.
La solution, c'est de mettre deux petits boutons (croissant et décroissant) en haut de tes colonnes, et de faire un link_to dessus, en passant en paramètre le nom de la colonne ainsi que le sens (ASC / DESC)
tu récupères ces paramètres dans ton action, et tu fait ta requête dans ton modèle en précisant le :order :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 @return_values = Users.find :all, :order=>"#{params[nom_champs]} #{params[sens]}"
Attention, si tu fait ça dans la même action que ton listing initial, pense à gérer le cas où il n'y a pas de paramètres
Globalement inoffensif
Merci de respecter les règles du forum.
Aucune question technique par MP !
_______________________________________________________________________
Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
Tutoriaux HTML/CSS et PHP
Pourquoi veux-tu absolument éviter de NE PAS rafraichir ta page ? C'est dommage surtout que tu pourrais preload ta table en javascript et la trier sans avoir à faire à chaque fois une requete sur ta BDD
Ajax permet de requeter la BDD et d'envoyer les résultats dans la page courante, sans avoir besoin de rafraichir la totalité de la page. C'est bien, mais ça fait quand meme un acces serveur.
Alors un acces serveur pour recharger juste le tableau (Ajax), ou un acces serveur pour tout recharger, c'est toujours un acces serveur.
La solution Javascript est la meilleure, une fois que les données sont chargées dans la page, le poste client n'a pas en théorie, besoin d'un serveur, pour afficher de telle ou telle façon.
Maintenant, pour faire un tri de tableau en javascript, plein de gens l'ont déja fait, il existe tout un tas de variantes de scripts... A toi de chercher celui qui correspond à ton besoin.
( Ca dépend par exemple si tu dois trier des chiffres ou des lettres ou des dates, etc...)
je recherche par ailleurs des exemples ultra simple de liste triable sur en-tete de colonne (sans images qui indique le sens du tri, juste un lien Asc qui devient DESC si on clic dessus).
apparement c difficile a trouver , il n'ya que des exemples ajax.
ma piste ne te va pas ? il n'y a que ça à faire, pas de solution miracle, faut le faire à la mimine, mais c'est pas le bout du monde, loin de là...
c'est juste que dans l'action qui affiche ton tableau, faut gérer un paramètre optionnel ASC ou DESC, et changer ta requête si un de ces deux params est passé... grosso modo, ça doit pas te rajouter plus de 6 lignes (utilises un case, y'a que 3 cas à gérer et hop !)
Globalement inoffensif
Merci de respecter les règles du forum.
Aucune question technique par MP !
_______________________________________________________________________
Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
Tutoriaux HTML/CSS et PHP
c'est en fait en niveau du lien que j'ai un souci
il faut faire un truc du genre link_to "departement", :action="list", apres je seche pour préciser la class appliquer au lien et passer le parametre ( plusieurs dans le cas présent le champ et l'ordre)
qu'est ce que j'ai du mal avec la doc rails
dans ton action, tu récupéreras params[:order] et params[:autre_param]
Code : Sélectionner tout - Visualiser dans une fenêtre à part link_to 'ASC', :action=>'ton_action', :order=>'ASC', :autre_param=>'tata'
Globalement inoffensif
Merci de respecter les règles du forum.
Aucune question technique par MP !
_______________________________________________________________________
Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
Tutoriaux HTML/CSS et PHP
Bonjour,
Un peu hors sujet...
Mais si ça peut vous aider, j'ai utilisé le lien suivant lorsque j'ai voulu faire des tableaux... La marche à suivre est assez bien développée pour démarrer :
http://dev.nozav.org/rails_ajax_table_fr.html
Evidemment c'est de l'Ajax (ammoniaqué)... Mais désajaxifier la partie trie n'est pas difficile. Suffit (a priori) de remplacer le link_to_remote par un link_to, non ?
Côme
Tsss allez je suis sympa, j'ai cherché à ta place, et voici un résultat :
http://www.kryogenix.org/code/browser/sorttable/
Franchement j'ai hésité à le donner, parceque :
1) Rien à voir avec Rails ou Ruby
2) C'est plus facile et plus rapide de chercher soi meme que d'attendre que les autres trouvent à ta place, je ne te rends pas service en donnant direct la solution.
Mais bon allez, c'est pas grave, si t'as besoin d'aide, on n'est quand meme pas des sauvages
@Côme => Hey dis donc ça à l'air pas mal du tout ton lien, je vais osculter ça de + prés ! Merci
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager