Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/08/2011, 12h23   #1
Membre régulier
 
Avatar de horkets
 
Inscription : juillet 2005
Messages : 324
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 324
Points : 93
Points : 93
Par défaut Afficher et masquer des lignes de tableau avec IE8

Bonjour à tous,

Est ce que quelqu'un pourrait m'expliquer ce qui ne vas pas avec le code ci-dessous ?

J'utilise Drupal6, pour afficher le programme d'un evenement.
Le programme est constitué de plusieurs lignes.

Pour afficher le programme complet, j'utilise un module Drupal me permettant de faire des listes de lignes.

Ces lignes sont placée dans un tableau.

Chaque ligne de ce tableau est "classée" de façon à ce que je puisse utiliser JQuery pour masquer/afficher chaque ligne de tableau lorsqu'on clique dessus en fonction de la classe ...

Cela fonctionne dans Opéra, Chrome, Firefox, Safari, mais malheureusement pas dans IE7 et IE8.

Que n'aurais je pas compris ?

Merci d'avance pour votre aide

H

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
<tr id="row<?php print $data->node_vid ?>" class="parent" style="cursor: pointer;" title="Click to expand/collapse">
 <td style="vertical-align:top;">
  <div style="padding-top:5px;">
   <?php print $data->node_data_field_event_ref_field_h_debut_value; ?>
  </div>
 </td>
<td style="vertical-align:top;padding-top:4px;">&nbsp;-&nbsp;</td>
 <td valign="top">
  <div style="padding-top:5px;">
   <?php print $data->node_data_field_event_ref_field_h_fin_value; ?>
  </div>
 </td>
 <td style="vertical-align:top;">
  <div style="padding-top:5px;">
   <?php print $data->node_title; ?>
  </div>
 </td>
 <td><b>+</b></td>
</tr>
 
<tr class="child-row<?php print $data->node_vid ?>" style="display: none;">
 <td valign="top" colspan="4">
  <div style="width:500px;">
   <?php print $data->node_revisions_body; ?>
  </div>
 </td>
</tr>
__________________
24 hours a day ... never enough
horkets est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 12h39   #2
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 807
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 807
Points : 35 797
Points : 35 797
Citation:
Cela fonctionne
Cela quoi ? Il n'y a pas une ligne de jQuery dans ce que tu montres
Et il est aussi demandé de poster le code HTML généré, pas le PHP qui n'est d'aucune utilité pour JavaScript...
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 12h56   #3
Membre régulier
 
Avatar de horkets
 
Inscription : juillet 2005
Messages : 324
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 324
Points : 93
Points : 93
effectivement ... Désolé

Voici le script JQuery
Code :
1
2
3
4
5
6
7
8
9
 
<script>
$(function() {
   $('tr.parent').css("cursor","pointer").attr("title","Click to expand/collapse").click(function(){
   $(this).siblings('.child-'+this.id).toggle();
 });
 $('tr[@class^=child-]').hide().children('td');
});
</script>
Et le code html généré:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
 
<h3>Programme</h3>
<div class="view-content">
<div class="views-row views-row-2 views-row-even views-row-last">
<table style="width:533px;border: 0 none; display:block;">
<colgroup>
<col style="width: 40px;">
<col style="width: 5px;vertical-align:top; top:3px;">
<col style="width: 50px;">
<col style="width: 445px;">
</colgroup>
<tbody>
<tr id="row29" class="parent" title="Click to expand/collapse" style="cursor: pointer;">
<td style="vertical-align:top;">
<div style="padding-top:5px;"> 9:00 </div>
</td>
<td style="vertical-align:top;padding-top:4px;">&nbsp;-&nbsp;</td>
<td valign="top">
<div style="padding-top:5px;"> 9:30 </div>
</td>
<td style="vertical-align:top;">
<div style="padding-top:5px;"> Introduction </div>
</td>
<td>
<b>+</b>
</td>
</tr>
<tr class="child-row29" style="display: none;">
<td valign="top" colspan="4">
<div style="width:500px;">
Introduction
<br>
Orateur: Monsieur X
<br>
Des nos jours, il est important de concevoir les éléments d'un ...
<br>
<br>
</div>
</td>
</tr>
<tr id="row34" class="parent" title="Click to expand/collapse" style="cursor: pointer;">
<td style="vertical-align:top;">
<td style="vertical-align:top;padding-top:4px;">&nbsp;-&nbsp;</td>
<td valign="top">
<td style="vertical-align:top;">
<td>
</tr>
<tr class="child-row34" style="display: none;">
</tbody>
</table>
Est ce que cela est suffisant ?

Merci
__________________
24 hours a day ... never enough
horkets est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 13h01   #4
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 807
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 807
Points : 35 797
Points : 35 797
Code :
$('tr[@class^=child-]')
Ce type de sélecteur n'existe pas
Il sert à quoi le @ ?
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 13h05   #5
Membre régulier
 
Avatar de horkets
 
Inscription : juillet 2005
Messages : 324
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 324
Points : 93
Points : 93
Si mes souvenirs sont bons, c'est une expression régulière qui me permet de trouver l'élément class dans le code.

Ceci dit, si j'enleve le @, cela ne change rien ... ?

Je pense que je vais changer le principe.

Pour l'instant, un user décide quelle ligne du programme il veut afficher, ce qui n'est en fait pas pratique pour ceux qui veulent avoir un aperçu général, car ils devront cliquer sur chaque ligne du tableau pour tou lire.

Je devrais donc placer ce tableau dans un div et faire en sorte que ce soit ce div qui s' "expand" ou se "collapse" en une fois.

Dès lors, est ce que je dois faire quelque chose de particulier concernant IE7 et IE8 ?
__________________
24 hours a day ... never enough
horkets est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 14h23   #6
Membre régulier
 
Avatar de horkets
 
Inscription : juillet 2005
Messages : 324
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 324
Points : 93
Points : 93
Je m'y suis pris autrement. Ca fonctionne.
Merci pour la rapidité de réaction!
H
__________________
24 hours a day ... never enough
horkets est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 15h25   #7
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 807
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 807
Points : 35 797
Points : 35 797
Citation:
Envoyé par horkets
Si mes souvenirs sont bons, c'est une expression régulière qui me permet de trouver l'élément class dans le code.
Pour être précis, le sélecteur
est bien correct, c'est juste à l'@ que je faisais allusion
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h17.


 
 
 
 
Partenaires

Hébergement Web