Jul 222009
 

Suite à la première remarque de Grégo dans son commentaire, j’ai modifié quelque peu l’étape 5 pour tenter d’avoir le fonctionnement suivant : Lors du clic sur l’onglet, le dit onglet s’active directement et ce n’est que le panel de contenu qui se met à jour via Ajax.

Pour cette 7ème étape j’ai, pour des raisons pratiques, utilisé jQuery pour la partie javascript.

PageEtape7.java

Dans un premier temps, ajoutons au header de la PageEtape7 les ressources javascript :

Ensuite dans l’implémentation de la méthode onOngletClick on supprime la ligne concernant le rafraichissement du panel ongletsPanel.

PageEtape7.js

On retrouve une déclaration de busy indicator pour notre panel de contenu, ainsi que la fonction javascript qui permet de mettre à jour la classe css de nos onglets (comme le faisait la classe OngletClassAttributeModel dont on à d’ailleurs plus besoin)

OngletAjaxLink

Dans le PanelOnglets, nous utilisions une ListView contenant des AjaxLink. Chaque AjaxLink possède son propre AjaxEventBehavior qui se charge d’écrire le code javascript qui va bien dans l’attribut onclick de notre lien.

J’ai donc décidé de créer mon propre OngletAjaxLink pour avoir la main sur l’AjaxEventBehavior.

La partie la plus importante est la surcharge de la méthode getEventHandler() qui nous permet d’ajouter un code javascript (le updateOnglet(" + index + ");)avant le code initial de l’
AjaxEventBehavior
.

PanelOnglets.java

Plus besoin de la surcharge de la méthode newItem(int _index) vu qu’on a plus besoin de l’OngletClassAttributeModel ce qui du coup simplifie un peu cette classe.

PanelOnglets.html

Encore une fois, j’ai mis à jour le résultat étape par étape et voilà le code source (sous la forme d’un projet Eclipse, il vous faudra aussi maven pour la gestion des dépendances). voir les corrections dans l’article : Onglets Dynamiques : Etape 7 – Corrections

edit : Attention apparemment firebug génère une erreur lors du clic sur un onglet de l’étape 7, mais c’est à cause d’un bug de firebug (sic). Désactivez le quand vous allez sur le résultat étape par étape et tout ira bien.

Imprimer cet article Imprimer cet article

  One Response to “Onglets Dynamiques : Etape 7”

  1. [...] Onglets Dynamiques : Etape 7 – Corrections Tutorial, Wicket par nicogiard Add comments [...]

Leave a Reply