Utilisation d'une bibliothèque de tri via AJAX

Utilisation d'une bibliothèque de tri via AJAX - HTML/CSS - Programmation

Marsh Posté le 08-02-2008 à 11:24:42    

Bonjour,  
 
J'ai découvert une superbe bibliothèque pour faire des tris de tableaux combinée avec jquery via  
 
http://www.javascripttoolbox.com/l [...] amples.php
 
Cependant, j'ai des tableaux de données appelés via AJAX et je n'arrive pas à appeler les classes de cette lib alors qu'elle marche nickel lorsque je suis dans un fichier HTML classique sans AJAX. C'est pourquoi si quelqu'un pouvait m'aider à intégrer cette librairie lors de mes appels AJAX, aura toute ma gratitude  :jap: .
 
Merci d'avance de votre aide.

Reply

Marsh Posté le 08-02-2008 à 11:24:42   

Reply

Marsh Posté le 08-02-2008 à 15:43:03    

Arf personne pour m'aider :( .

Reply

Marsh Posté le 08-02-2008 à 16:04:42    

Si t'aider c'est faire tout le truc à ta place, j'ai bien peur qu'effectivement tu ne trouves pas grand monde pour t'aider.
 
Si ce n'est pas le cas, quelques précisions sur l'endroit où tu es bloqué seraient les bienvenus.


---------------
Software and cathedrals are much the same - first we build them, then we pray.
Reply

Marsh Posté le 08-02-2008 à 17:26:50    

anapajari a écrit :

Si t'aider c'est faire tout le truc à ta place, j'ai bien peur qu'effectivement tu ne trouves pas grand monde pour t'aider.
 
Si ce n'est pas le cas, quelques précisions sur l'endroit où tu es bloqué seraient les bienvenus.


 
 
Ben en fait y'a tout qui marche déjà (tableau, requête) mais je la déclaration de l'attribut class ne semble pas s'exécuter lorsde l'appel AJAX. Donc je voudrais juste pouvoir prendre en compte les attributs class des balises <th>.
 
Voici le fichier php via AJAX

Code :
  1. include ('./Connection_DB.php');
  2. header('Content-Type: text/html; charset=ISO-8859-15');
  3. if(isset($_POST["OrderCode"])){ // Ici la requête pour afficher le modèle selon la référence
  4.  $res = mssql_query("
  5.  SELECT DISTINCT   sum(element.prixachat) AS 'prix_achat', element.iddoc,
  6.        client.identite, AFFAIRE_BIS.date_liv,
  7.        AFFAIRE_BIS.GROUP_NAME,
  8.        CONVERT(varchar,affaire_bis.date_vente,101)  AS date_vente,
  9.        --RIGHT(REPLACE(REPLACE(RIGHT(affaire_bis.date_liv, len(affaire_bis.date_liv) - charindex('/', affaire_bis.date_liv)) + replicate('0', 2 - len(LEFT(affaire_bis.date_liv, charindex('/', affaire_bis.date_liv) - 1))) + LEFT(affaire_bis.date_liv, charindex('/', affaire_bis.date_liv) - 1),' ',''),'/',''),4) AS 'test',
  10.        USERSA.USER_NAME, element.nom--,
  11.  FROM     element inner join clipro2 on element.Clipro2_idClipro2 = clipro2.idclient INNER JOIN
  12.        document on element.iddoc = document.iddocu INNER JOIN
  13.        affaire_bis on element.iddoc = affaire_bis.id_affaire INNER JOIN
  14.        CLIPRO2 as client ON DOCUMENT.IDCLIENT = CLIENT.IDCLIENT FULL OUTER JOIN
  15.        USERSA ON affaire_bis.UID = USERSA.UID INNER JOIN element_dlt ed ON
  16.        element.idElement = ed.id_Element INNER JOIN dlt d ON
  17.        ed.id_DLT = d.idDLT
  18.  WHERE     --element.Clipro2_idClipro2 = '445' AND
  19.        (DOCUMENT.ID_STATUS = '1002') AND
  20.        (
  21.         (RIGHT(REPLACE(REPLACE(RIGHT(affaire_bis.date_liv, len(affaire_bis.date_liv) - charindex('/', affaire_bis.date_liv)) + replicate('0', 2 - len(LEFT(affaire_bis.date_liv, charindex('/', affaire_bis.date_liv) - 1))) + LEFT(affaire_bis.date_liv, charindex('/', affaire_bis.date_liv) - 1),' ',''),'/',''),4) BETWEEN ".$_POST["date_liv"]." AND ".$_POST["date_liv2"]."
  22.          AND (LEN(affaire_bis.date_liv)=7 OR LEN(affaire_bis.date_liv) = 6 OR LEN(affaire_bis.date_liv) = 5)
  23.         )
  24.        ) AND affaire_bis.date_vente >= '".$_POST["vente_debut"]."' AND affaire_bis.date_vente <= '".$_POST["vente_fin"]."' AND
  25.        element.CatReport_idCatReport <> 11 and
  26.        element.CatReport_idCatReport <> 12 and
  27.        element.CatReport_idCatReport <> 13 and
  28.        element.CatReport_idCatReport <> 14 AND element.PrixAchat <>0.00 AND
  29.        element.OrderCode NOT LIKE '%RIU%' AND
  30.        AFFAIRE_BIS.GROUP_NAME NOT LIKE '%FORM%' --AND d.nom LIKE '%05 Tenes%'
  31.        AND affaire_bis.date_liv NOT LIKE '%a%' AND element.OrderCode LIKE '%".$_POST["OrderCode"]."%'
  32.  GROUP BY     element.prixachat, element.iddoc,
  33.        affaire_bis.date_liv,
  34.        client.identite,
  35.        AFFAIRE_BIS.GROUP_NAME ,
  36.        USERSA.USER_NAME,
  37.        affaire_bis.date_vente, element.nom 
  38.  ORDER BY affaire_bis.Group_NAME, client.identite, AFFAIRE_BIS.date_liv;" );
  39.  $total = mssql_num_rows($res);
  40.  $total = utf8_decode($total);
  41. }
  42. else
  43. {
  44.  echo '';
  45. }
  46. // si on a récupéré un résultat on l'affiche.
  47.  if($total) {
  48.     // début de la liste, affichage par tableau ds les commentaires
  49.   echo '<br>Résultats de la recherche<br>';
  50.   //echo '<input type="text" class="calendrier">';
  51.   echo '<table bgcolor="#FFFFFF" class="example sort01 table-autosort table-autofilter table-autopage:10 table-stripeclass:alternate table-page-number:t1page table-page-count:t1pages table-filtered-rowcount:t1filtercount table-rowcount:t1allcount" id="Reference">'."\n";
  52.         // première ligne on affiche les titres id et statut dans 3 colonnes
  53.   echo '<tr>';
  54.   echo '<th bgcolor="#FF6633" class="table-sortable:currency"><b><u>Prix Achat</u></b></th>';
  55.   echo '<th bgcolor="#FF6633" class="table-sortable:default"><b><u>Numéro bon de commande</u></b></th>';
  56.   echo '<th bgcolor="#FF6633" class="table-sortable:date"><b><u>Date de livraison</u></b></th>';
  57.   echo '<th bgcolor="#FF6633" class="table-filterable table-sortable:default"><b><u>Client</u></b></th>';
  58.   echo '<th bgcolor="#FF6633" class="table-filterable table-sortable:default"><b><u>Magasin</u></b></th>';
  59.   echo '<th bgcolor="#FF6633" class="table-sortable:date"><b><u>Date de vente</u></b></td>';
  60.   echo '<th bgcolor="#FF6633" class="table-filterable table-sortable:default"><b><u>Vendeur</u></b></td>';
  61.   echo '<th bgcolor="#FF6633" class="table-filterable table-sortable:default"><b><u>Nom élément</u></b></td>';
  62.   echo '</tr>'."\n";
  63.     // lecture et affichage des résultats sur 3 colonnes, 1 résultat par ligne.   
  64.   while($row = mssql_fetch_array($res)) {
  65.    echo '<tr class="alternate">';
  66.    echo '<td bgcolor="#CCCCCC">'.$row["prix_achat"].'</td>';
  67.    echo '<td bgcolor="#CCCCCC">'.$row["iddoc"].'</td>';
  68.    echo '<td bgcolor="#CCCCCC">'.$row["date_liv"].'</td>';
  69.    echo '<td bgcolor="#CCCCCC">'.$row["identite"].'</td>';
  70.    echo '<td bgcolor="#CCCCCC">'.$row["GROUP_NAME"].'</td>';
  71.    echo '<td bgcolor="#CCCCCC">'.$row["date_vente"].'</td>';
  72.    echo '<td bgcolor="#CCCCCC">'.$row["USER_NAME"].'</td>';
  73.    echo '<td bgcolor="#CCCCCC">'.$row["nom"].'</td>';
  74.    echo '</tr>'."\n";
  75.     
  76.   }
  77.   echo'</select><br>';
  78.   echo '</table>'."\n";
  79.     // fin du tableau.
  80.  }
  81.  else
  82.  {
  83.   echo '<br>Aucun résultat ne correspond à votre recherche';
  84.  }
  85. ?>


 
 
Voici la fonction qui appel ce script  
 

Code :
  1. function go_reference(){//Fonction qui va effectuer la requête de recherche via AJAX
  2.    //alert(document.getElementById('zonecache').value);
  3.    var xhr = getXhr();
  4.    // On défini ce qu'on va faire quand on aura la réponse
  5.    xhr.onreadystatechange = function(){
  6.     //On attends le chargement
  7.    if(xhr.readyState == 1)
  8.    {
  9.     document.getElementById("Ref" ).innerHTML = "<div align='center'><br><img src='chargement.gif' width='17' height='17' /><br><br>chargement...</div>";//insertion d'un gif pendant le chargement
  10.  
  11.     // On ne fait quelque chose que si on a tout reçu et que le serveur est ok
  12.    }
  13.    else if(xhr.readyState == 4 && xhr.status == 200){
  14.      var c = document.getElementById('Ref');
  15.      //alert(xhr.responseText);
  16.      c.innerHTML = xhr.responseText;
  17.      //maintenant que les données reçu on été placé dans la page,
  18.      //il faut exécuter toutes les balise script :
  19.      var allscript = c.getElementsByTagName('script');
  20.      for(var i=0;i< allscript.length;i++){
  21.       window.eval(allscript[i].text);
  22.      }
  23.     }
  24.    }
  25. date_liv = annee_livraison(document.getElementById('debut'));
  26.     date_liv2 = annee_livraison(document.getElementById('fin'));
  27.     vente_debut = document.getElementById('vente_debut').value;
  28.     vente_fin = document.getElementById('vente_fin').value;
  29. if(document.getElementById("OrderCode" ).value==''){//si ordercode=vide
  30.       xhr.open("POST","OrderCode_Vide.php",true);
  31.       xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded','charset=iso-8859-15');
  32.       sel = document.getElementById("OrderCode" ).value;
  33.       xhr.send("OrderCode="+sel+"&date_liv="+date_liv+"&date_liv2="+date_liv2+"&vente_debut="+vente_debut+"&vente_fin="+vente_fin);
  34.      }
  35.      else{
  36.       xhr.open("POST","OrderCode.php",true);
  37.       xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded','charset=iso-8859-15');
  38.       sel = document.getElementById("OrderCode" ).value;
  39.       xhr.send("OrderCode="+sel+"&date_liv="+date_liv+"&date_liv2="+date_liv2+"&vente_debut="+vente_debut+"&vente_fin="+vente_fin);
  40.      }

Reply

Marsh Posté le 10-02-2008 à 20:46:11    

Flemme de lire le code, mais regarde si ta pas des variables qui ont le meme nom...

Reply

Marsh Posté le 11-02-2008 à 09:52:28    

Ben le code il marche c'est juste que je ne sais pas comment faire pour exécuter les attributs CLASS de mes balises <th> et <tr>.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed