Bonjour,

j'essaie d'utiliser Ajax pour mettre des éléments à jour au sein d'une page (affichage par ordre croissant ou decroissant d'un ensemble d'items), mais je butte sur la façon d'actualiser la page.

Plus en détails, je dispose d'une action visu qui recupère un tableau d'items
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
actions.class.php : 
   executeVisu()
      {
      $this->item;
      }
Ceci est récupéré par le template visuSuccess.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
      <div id='down'><input type='button' value='bas'></div>
      include_partial('detail',array('det'=>$item));
le partial _detail
Code : Sélectionner tout - Visualiser dans une fenêtre à part
      foreach($det as $d) {affichage d un tableau ligne par ligne}
le fichier javascript permettant l'interaction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
     $function(){
                $("#down").click(function(e){
                     $.post('affiche',{tri:'DESC'})
                });
     });
le fichier actions.class.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
  executeAffiche()
     recuperation de la variable tri et requete sur les items en consequence
     return $this->renderPartial('detail',array('detail)=>$item));
Ce code (j'ai simplifié) ne met pas à jour ma page et ne génère aucune erreur. Si je remplace la ligne renderPartial par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
return $this->getPartial('detail',array('detail)=>$item));
, je vois dans le log d'erreurs le résultat que j'attends (ligne de mon tableau) avec le message comme quoi le template 'affiche' n'existe pas ou n'est pas lisible.

Je pense donc que les rêquetes sont en place pour avoir les données attendues mais que je ne sais pas les afficher. Je ne comprends pas comment fonctionne renderPartial, comment indiquer quelle partie de la page est à actualiser ?

Merci de votre aide