Bonjour à tous,
je développe actuellement une appli asp.net, une page de cette appli représente un tableau-bilan mensuel.
A chaque jour du mois sont associées 2 lignes, dont voici le squelette simplifié :
Le principe est simple, ma première ligne affiche des valeurs totales + un bouton permettant d'afficher/masquer la seconde ligne, qui elle contient des sous-données.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 ... <tr onClick="ChangeUrl(url)"> <td rowspan="2">X <!--le num du jour--></td> <td>Total1</td> <td>Total2</td> ... <td onClick="Bascule(jourX)">Details</td> </tr> <tr id="jourX" style="display:none"> <td>Détail AAA de 1<br />Détail BBB de 1 ...</td> <td>Détail AAA de 2<br />Détail BBB de 2 ...</td> ... <td> </td> <!-- cellule vide car sous la cellule 'Details'--> </tr> ...
Ce que je souhaite, c'est de pouvoir en cliquant sur ma première ligne aller sur une autre page de mon appli ('onClick' du <tr>).
Malheureusement - ce qui est malgré tout logique - en procédant ainsi, lorsque je clique sur le bouton "détails", l'évènement onClick du <td> survient, suivi de l'évènement onClick du <tr>. Ma ligne invisible s'affiche donc, mais je suis instantanément redirigé vers l'autre page...
Existe-t-il un moyen de dire à la fin du premier évènement qu'il faut abandonner la gestion du second ? J'ai pour l'instant essayé
...mais sans succès.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <td onClick="Bascule(jourX);return false"> <td onClick="Bascule(jourX);void"> <td onClick="Bascule(jourX);window.event.returnValue = false">
J'ai toujours la solution de secours d'affecter le onClick'changeURL(url)' à ma première cellule, mais ça ne me satisfait pas trop... et, détail important, je ne peux pas accéder à ma variable 'url' dans les cellules contenant les totaux, limitation due au mécanisme asp.net utilisé (pour les connaisseurs, c'est parce que j'utilise un repeater qui m'affiche les jours, et pour chaque jour un nouveau repeater qui m'affiche les valeurs => au sein du 2e repeater, on ne peut pas accéder aux variables du 1er repeater...)
Voilà, sur de merci d'avance pour votre aide !![]()
Partager