Trier n tableaux d'une même page avec Jquery
Résolu
chris0938
Messages postés
83
Date d'inscription
Statut
Membre
Dernière intervention
-
chris0938 Messages postés 83 Date d'inscription Statut Membre Dernière intervention -
chris0938 Messages postés 83 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'utilise un script JQuery permettant de trier un tableau en cliquant sur l'entête des colonnes
et je me demandais s'il etait possible de trier plusieurs tableaux qui se trouvent sur la même page. j'ai changé l'identifiant du tableau de facon a ce que chaque tableau est un identifiant unique mais cela ne fonctionne pas:
est ce que quelqu'un aurait une idée?
j'utilise un script JQuery permettant de trier un tableau en cliquant sur l'entête des colonnes
/* * Script qui permet de trier un tableau */ var table=function(){ //creation de l'objet sorter function sorter(n){ this.n=n; this.t; this.b; this.r; this.d; this.p; this.w; this.a=[]; this.l=0 } sorter.prototype.init=function(t,f){ //t correspond a l'identifiant du tableau //f correspond a la colonne qui sera trier lors de l'ouverture de la page this.t=document.getElementById(t); this.b=this.t.getElementsByTagName('tbody')[0]; this.r=this.b.rows; var l=this.r.length; for(var i=0;i<l;i++){ if(i==0){ var c=this.r[i].cells; this.w=c.length; for(var x=0;x<this.w;x++){ if(c[x].className!='nosort'){ c[x].className='head'; c[x].onclick=new Function(this.n+'.work(this.cellIndex)') } } }else{ this.a[i-1]={}; this.l++; } } if(f!=null){ var a=new Function(this.n+'.work('+f+')'); a() } } sorter.prototype.work=function(y){ this.b=this.t.getElementsByTagName('tbody')[0]; this.r=this.b.rows; var x=this.r[0].cells[y],i; for(i=0;i<this.l;i++){ this.a[i].o=i+1; var v=this.r[i+1].cells[y].firstChild; this.a[i].value=(v!=null)?v.nodeValue:'' } for(i=0;i<this.w;i++){ var c=this.r[0].cells[i]; if(c.className!='nosort'){ c.className='head' } } if(this.p==y){ this.a.reverse(); x.className=(this.d)?'asc':'desc'; this.d=(this.d)?false:true }else{ this.p=y; this.a.sort(compare); x.className='asc'; this.d=false } var n=document.createElement('tbody'); n.appendChild(this.r[0]); for(i=0;i<this.l;i++){ var r=this.r[this.a[i].o-1].cloneNode(true); n.appendChild(r); r.className=(i%2==0)?'even':'odd' } this.t.replaceChild(n,this.b) } function compare(f,c){ f=f.value, c=c.value; var i=parseFloat(f.replace(/(\$|\,)/g,'')), n=parseFloat(c.replace(/(\$|\,)/g,'')); if(!isNaN(i)&&!isNaN(n)){ f=i, c=n } return (f>c?1:(f<c?-1:0)) } return{ sorter:sorter } }();
et je me demandais s'il etait possible de trier plusieurs tableaux qui se trouvent sur la même page. j'ai changé l'identifiant du tableau de facon a ce que chaque tableau est un identifiant unique mais cela ne fonctionne pas:
<table class="sortable" id="sorter_<?php echo $nomProd;?>" <script type="text/javascript"> var sorter=new table.sorter("sorter_<?php echo $nomProd;?>"); sorter.init("sorter_<?php echo $nomProd;?>",6); </script>
est ce que quelqu'un aurait une idée?
A voir également:
- Trier n tableaux d'une même page avec Jquery
- Trier un tableau excel - Guide
- Supprimer une page word - Guide
- Imprimer tableau excel sur une page - Guide
- Créer une page facebook - Guide
- Comment traduire une page - Guide