IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Firefox et modification de style d'une ligne


Sujet :

JavaScript

  1. #1
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    261
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 261
    Par défaut Firefox et modification de style d'une ligne
    Bonjour tout le monde, pour les besoins de mon projet, je doit faire apparaitre et disparaitre des lignes de mon tableau.
    Je le fais de cette facon

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    document.getElementById('champ_cartereseau1').style.display="none"
    document.getElementById('champ_cartereseau2').style.display="block"
    Sous I.E. aucun problème, sous Firefox j'ai un bug, au lieu d'avoir mon intitulé dans un td et la valeur dans un autre td, j'ai tout dans un seul td...

    Par exemple sous i.e j'ai ca

    TD-------------------------------TD
    ip carte réseau------------ 195.162.35.14

    mais sous Firefox j'ai ca

    TD--------------------------------TD
    ip carte réseau 195.162.35.14

    Cela me le fait juste pour les TR que s'affiche et que je cache à l'aide de mon javascript...

  2. #2
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    peux tu nous donner ta structure complète ?
    ou un exemple sur plusieurs lignes

  3. #3
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    261
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 261
    Par défaut
    Bien sur, voici un exemple:

    mon fichier .tpl (j'utilise smarty)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <tr class="td_titre" id="champ_ram" style='display:none'>
    				<td><b>Informations sur la mémoire ram :</b></td>
    			</tr>
    			<tr class="tab" id="champ_ram1" style='display:none'>
    				<td width="40%">Nombre de Mo :</td>
    				<td width="60%"><input type="text" name="nbmo_ram" id="nbmo_ram" size="10"> Mo</td>
    			</tr>
    			<tr class="tab" id="champ_ram2" style='display:none'>
    				<td width="40%">Fréquence :</td>
    				<td width="60%"><input type="text" name="frequence_ram" id="frequence_ram" size="10"> Mhz</td>
    			</tr>

    et mon javascript pour afficher/masquer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    else if(document.getElementById(liste).value == "106")
    	{
    		document.getElementById('champ_ram').style.display="block"
    		document.getElementById('champ_ram1').style.display="block"
    		document.getElementById('champ_ram2').style.display="block"

  4. #4
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    bonjour,

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    document.getElementById('champ_ram').style.display="block";
    document.getElementById('champ_ram1').style.display="block";
    document.getElementById('champ_ram2').style.display="block";

    à la place de "block" ne mets rien.
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    document.getElementById('champ_ram').style.display="";
    document.getElementById('champ_ram1').style.display="";
    document.getElementById('champ_ram2').style.display="";

    Les TR sont des balises table-row et non des balises block. Si tu ne précises pas la valeur du display, l'attribut prendra sa valeur par défaut.

    Petite remarque en passant : prends l'habitude de terminer chaque instruction JS par un point virgule

  5. #5
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    ajoute également un

    colspan sur ta première td

  6. #6
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Citation Envoyé par le_chomeur Voir le message
    ajoute également un colspan sur ta première td
    ah oui, bien vu

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <tr class="td_titre" id="champ_ram" style='display:none'>
    	<td colspan="2"><b>Informations sur la mémoire ram :</b></td>
    </tr>

  7. #7
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    261
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 261
    Par défaut
    Oups j'ai oublié les points virgules partout... d'habitude je les mets toujours...

    J'ai enlevé l'attribut block mais ca ne change rien, mon tableau est toujours déformé

  8. #8
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    bizare :

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Document sans nom</title>
    <script type="text/javascript">
    function voir(){
    	document.getElementById('champ_ram').style.display="block"
    		document.getElementById('champ_ram1').style.display="block"
    		document.getElementById('champ_ram2').style.display="block"
    }
    function masque(){
    	//document.getElementById('champ_ram').style.display="none"
    		document.getElementById('champ_ram1').style.display="none"
    		//document.getElementById('champ_ram2').style.display="none"
    }
    </script>
    </head>
     
    <body>
    <table border="1">
    <tbody>
    <tr class="td_titre" id="champ_ram" style='display:none' style="width:700px" bordercolor="#666666" >
    				<td colspan="2"><b>Informations sur la mémoire ram :</b></td>
    			</tr>
    			<tr class="tab" id="champ_ram1" style='display:none'>
    				<td width="40%">Nombre de Mo :</td>
    				<td width="60%"><input type="text" name="nbmo_ram" id="nbmo_ram" size="10"> Mo</td>
    			</tr>
    			<tr class="tab" id="champ_ram2" style='display:none'>
    				<td width="40%">Fréquence :</td>
    				<td width="60%"><input type="text" name="frequence_ram" id="frequence_ram" size="10"> Mhz</td>
    			</tr>
                </tbody>
    </table>
    <input type="button" onclick="masque()" value="masque" />
    <input type="button" onclick="voir()" value="voir" />
    </body>
    </html>
    ne me pose aucun soucis

  9. #9
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    261
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 261
    Par défaut
    je ne sais vraiment pas de quoi cela peut provenir, j'ai un autre problème, peut être sont il liés...sur firefox quand je choisi dans ma liste disque dur, les infos du disque dur apparaissent et ensuite quand je chois par exemple carte mère bah les infos de la carte mère apparaissent mais avec un saut de plusieurs lignes.
    Comme si les infos du disque dur étaient toujours présentes mais pas visible...

  10. #10
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    heu la ça peut venir de plein de choses .... surtout en asp.net
    essaye de regarder la source généré après ta sélection pour voir les éléments parasites

  11. #11
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    261
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 261
    Par défaut
    euh je développe pas en asp mais en php.

    Bonne idée je vais aller voir le code généré et je vous tient au courant

  12. #12
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    261
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 261
    Par défaut
    mon code généré est correcte, cependant à l'écran non....

    voici mon code généré

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <tr class="tab"  id="champ_choixmodele" style='display:none'>
    				<td width="40%">Modéle :</td>
    				<td width="60%"><select name="choixmodele_materiel" id="choixmodele_materiel" onchange="go();fcsite(this.form,this.form.site_materiel);fcetage(this.form,this.form.etage_materiel);fcservice(this.form,this.form.service_materiel);">
    							<option value="0">Aucun</option>
    						</select>
    				</td>
     
    			</tr>

  13. #13
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    et donc que ce passe t-il avec cette ligne ?
    au passage met des double quote sur le style="display:none"

  14. #14
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    261
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 261
    Par défaut
    bah cette ligne ne saffiche pas correctement,

    dans mon code source jai ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <tr class="tab"  id="champ_choixmodele" style='display:none'>
    				<td width="40%">Modéle :</td>
    				<td width="60%"><select name="choixmodele_materiel" id="choixmodele_materiel" onchange="go();fcsite(this.form,this.form.site_materiel);fcetage(this.form,this.form.etage_materiel);fcservice(this.form,this.form.service_materiel);">
    							<option value="0">Aucun</option>
    						</select>
    				</td>
     
    			</tr>
    Mais en réalité ce que je vois sur ma page si je te transforme ca en code ca donnerai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <tr class="tab"  id="champ_choixmodele" style='display:none'>
    				<td width="40%">Modéle : <select name="choixmodele_materiel" id="choixmodele_materiel" onchange="go();fcsite(this.form,this.form.site_materiel);fcetage(this.form,this.form.etage_materiel);fcservice(this.form,this.form.service_materiel);">
    							<option value="0">Aucun</option>
    						</select></td>
    				<td width="60%"></td>
     
    			</tr>

  15. #15
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    261
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 261
    Par défaut
    Problème résolu grâce à Auteur, j'avais oublié un "block" dans une des mes fonctions, c'est pour cela que mon tableau était détruit...

    Merci pour votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2.x] modification et suppression d'une ligne dans une table
    Par rim2004 dans le forum Symfony
    Réponses: 1
    Dernier message: 24/02/2014, 13h09
  2. Définir le style d'une ligne dans un listbox
    Par Sunsawe dans le forum Windows Forms
    Réponses: 4
    Dernier message: 20/07/2007, 20h43
  3. Appliquer un style a une ligne de tableau
    Par LordBob dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 20/07/2006, 10h52
  4. modification de données pour une ligne
    Par Skizo dans le forum Access
    Réponses: 5
    Dernier message: 12/05/2006, 11h05
  5. Style d'une ligne d'un tableau et Checkbox
    Par echecetmat dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 25/01/2005, 15h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo