Vous êtes ici : Accueil > Forum > Programmation JavaScript et HTML > Forum : Sujet «tri dynamique tableau DOM»
Bonjour à tous,
Présentaion sommaire : je suis à peu prêt nul en langage (et quand je dis à peu prêt ....)
Je cherche à faire un tri dynamique de tableau (3 colonnes)comme indiqué dans un des javascript du site.
Problème : quelle que soit la colonne cliquée, le tri ne se fait que sur la colonne 2.
Voila plus d'un mois que je sui dessus, mais là, j'abandonne. Qui peut me donner un coup de main ?
(comme je suis nul, j'utilise FrontPage (oui, je sais !!!))
Vous pouvez allez voir là :
http://www.aet-fifi.com/aetfifi/Photos_donnees_LM/01Photos_donnees_essai_tri3.htm
Bon, ben .... ça ne se bouscule pas.
Patience donc ...
@+
Bonjour,
Désolé, j'ai complètement zappé ton message.
IL faudra sûrement que tu redéfinisses les critères de tri dans le script. J'avais conçu ce script pour trier des données simples, c'est-à-dire des nombres ou des chaînes de texte.
Or chez toi, c'est, à choix : une date, ou un lien. Mon script actuel tel qu'il est proposé ne permet pas de trier ce type de colonnes.
Pour les liens, il les considérera tous à égalité car il ne trouvera pas de noeud DOM texte en première position. .
Pour les dates, il va les trier lexicographicalement, ce qui produit un ordre erroné : 01/01/07 passant avant 10/12/06 passant lui-même avant 28/02/07.
QuentinC > Webmaster
Salut Quentin,
Je ne pensais pas que tu serais le seul à répondre.
Bon ben, même s'il n'y a pas de solution à mon problème, du moins une solution faite pour un ignare comme moi, je te remercie de t'en être occupé.
Chapeau pour ton site qui est très sympa.
Bon courage.
@+
aetfifi a écrit :
Je ne pensais pas que tu serais le seul à répondre.
Oh, tu sais, ce n'est pas un forum très fréquenté, et le 95% des membres sont des membres fantômes.
aetfifi a écrit :
Chapeau pour ton site qui est très sympa.
Merci pour ce gentil commentaire.
QuentinC > Webmaster
Bravo pour ce site et merci pour ce commentaire et sa réponse qui m'ont permis de ne pas tourner en rond plus longtemps...
J'ai dépassé ce blocage en pourvoyant les cases de mon tableau d'un id:
<td id='text'><a href='http://lienversmapage.com>text</a></td>
et en transformant la fonction comme suit:
function sortTable (tb, n)
{
var iter = 0;
while (!tb.tagName || tb.tagName.toLowerCase()!= "table")
{
if (!tb.parentNode) return;
tb = tb.parentNode;
}
if (tb.tBodies && tb.tBodies[0]) tb = tb.tBodies[0];
/* Tri par sélection */
var reg = /^\d+(\.\d+)?$/g;
var index = 0, value = null, minvalue = null;
for (var i= tb.rows.length -1; i >= 0; i -= 1)
{
minvalue = value = null;
index = -1;
for (var j=i; j >= 0; j -= 1)
{
value = tb.rows[j].cells[n].id;
if (!isNaN(value)) value = parseFloat(value);
if(minvalue == null || value < minvalue) { index = j; minvalue = value; }
}
if (index != -1)
{
var row = tb.rows[index];
if (row) {
tb.removeChild(row);
tb.appendChild(row);}
}
}
}
et ça marche!
IL faudrait que je me décide à mettre la nouvelle version de ce script. JE ne sais pas quand.... mais j'en ai une en stock.
QuentinC > Webmaster
6 réponses [ Page : 1 ]
Vous devez être membre pour pouvoir poster. Si vous êtes déjà inscrit, identifiez-vous grâce au formulaire ci-dessous, et sinon, inscrivez-vous maintenant.
Vous êtes ici : Accueil > Forum > Programmation JavaScript et HTML > Forum : Sujet «tri dynamique tableau DOM»
Dernière modification de cette page : Jeudi 18 février 2010 23:00
Haut de page
•
Contact
•
RSS
•
Valide XHTML 1.0
Notice : Undefined variable: titrePage : in /footer.php on line 55