| Auteur | |
|---|---|
| freezystem | # 20 Nov 2009 - 12:42:51 |
| 11 Posts |
Bonjour! Je travaille depuis quelques temps sur la mise en forme d'une feuille XML par le biais d'une feuille XSL. Pour se faire j'utilise un script en JavaScript qui marche parfaitement sur tout les naviguateur. Tout fonctionne correctement! "Mais où est le problème!?" me direz vous... Et bien le problème est que j'utilise pour trier mes colonnes de manière automatique un script en JS Open-Source que vous pourrez trouver à l'adresse suivante : http://www.kryogenix.org/code/browser/sorttable Ce script et magnifiquement fait et bien que n'ayant rien compris au source il est très simple d'utilisation. Il suffit d'attribuer au tableau la class "sortable" et toutes les colonnes se trient automatiquement par un clique simple sur l'en-tête de la colonne. Ce script fonctionne parfaitement sur IE mais ne marche plus sur les autres navigateurs. Après de très nombreux tests je pense que cela vient du fait que le code source du tableau même n'apparait pas en clair dans l'exploreur mais semble être stocké dans la mémoire du PC client. J'utilise appendChild() pour intégrer mon tableau à ma page xHTML, les autres techniques de marchant pas.. je vous copie mon fichier JS. Un aperçut du rendu : http://team-xgz.perso.sfr.fr/Test/index.php (essayez IE et FF pour voir la différence) Quelqu'un aurait une idée sur la manière de pouvoir copier mon tableau en dure dans mon fichier xHTML? Ou au pire une modification de mon script d'intégration XSL/XML qui permettrait de faire marcher le tri automatique. Merci d'avance pour votre patience et votre temps. Très cordialement, Freezystem Modifié par freezystem (30 Nov 2009 - 10:42) Life Is ShOrT... PlAy MoRe!!! |
| jo_link_noir | # 21 Nov 2009 - 18:46:10 |
| 298 Posts |
Bonjour, Le problème vient surtout de l'injection d'élément après la création de la page. D'après ce qu'est j'ai compris de sorttable, il lance sorttable.init quand la page est chargé et dans init, récupère tous les tableaux avec la class sorttable pour lui attacher les méthodes de tri. Vu que sorttable.init est lancé avant l'existance du tableau, il faut relancer un code d'attachement, celui dans sorttable.init ou directement sorttable.init. Si je ne me trompe pas du récupère directement un tableau ? Dans ce cas makeSortalbe directement devrait faire l'affaire |
|
|
| freezystem | # 22 Nov 2009 - 02:28:35 |
| 11 Posts |
Merci pour ta réponse! Je vais essayer et je te dit ça! Cordialement, Freezystem Life Is ShOrT... PlAy MoRe!!! |
| freezystem | # 30 Nov 2009 - 10:40:21 |
| 11 Posts |
Désolé d'avoir mis autant de temps à répondre mais je n'ai pas vraiment eu de temps pour m'en occupé la semaine dernière. Grand MERCI à toi (En Majuscules! ^^) pour ce petit bout de code qui m'a éclairé! Voici donc la solution à mon problème. Il suffisait juste de recharger le script à la fin du chargement du tableau avec l'instruction suivante; sorttable.makeSortable(document.getElementById("cluster_table")); où "cluster_table" est l'ID de ma table à trier. Sans plus attendre voici le code finale : Merci encore! Freezystem! Modifié par freezystem (30 Nov 2009 - 12:12) Life Is ShOrT... PlAy MoRe!!! |