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 :

Utiliser une variable pour modifier la taille d'une cellule <td>


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 35
    Points : 7
    Points
    7
    Par défaut Utiliser une variable pour modifier la taille d'une cellule <td>
    Bonjour a tous,

    Je suis actuellement en cours de développement d'un portail en Html intégrant du Javascript.

    Mon programme doit permettre de générer un tableau avec un nombre de ligne variable (je fais ca ave un while, c'est niquel).
    Le truc c'est qu'a chaque ligne, il y'a trois cases de taille variable et je dois me demmerder pour que ces 3 cases fasse 100% de la largeur du tableau.

    Je vois comment faire, le seul probleme est que le pourcentage de la taille du tableau est dans une variable et je ne vois pas comment inserer ma variable dans mon Document.write('<td width="Ma variable %" ');

    Quelqun aurait une idée pour m'aider a resoudre mon probleme?

    D'avance merci.

  2. #2
    Inactif  

    Profil pro
    Inscrit en
    Mai 2010
    Messages
    345
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 345
    Points : 496
    Points
    496
    Par défaut
    Citation Envoyé par morora69 Voir le message
    Bonjour a tous,

    Je suis actuellement en cours de développement d'un portail en Html intégrant du Javascript.

    Mon programme doit permettre de générer un tableau avec un nombre de ligne variable (je fais ca ave un while, c'est niquel).
    Le truc c'est qu'a chaque ligne, il y'a trois cases de taille variable et je dois me demmerder pour que ces 3 cases fasse 100% de la largeur du tableau.

    Je vois comment faire, le seul probleme est que le pourcentage de la taille du tableau est dans une variable et je ne vois pas comment inserer ma variable dans mon Document.write('<td width="Ma variable %" ');

    Quelqun aurait une idée pour m'aider a resoudre mon probleme?

    D'avance merci.
    Heu normalement tu n'as pas du tout besoin, puisque les TD prennent toute la largeur du tableau.

    et tu as mis un width:100% sur le tableau ?

    mais tu peux nous donner ton code HTML ?

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 664
    Points
    66 664
    Billets dans le blog
    1
    Par défaut
    http://www.developpez.net/forums/d47...hlight=tableau

    si tu veux spécifier une largeur pour tes cellules, il suffit dans la première occurrence de la boucle (donc sur les premiers td) de forcer un Sinon un style width 100 % sur le table et le navigateur gère tout seul la repartition des largeurs, ce qui est de loin la meilleur solution car IE ne sait pas ajouter les pourcentages correctement et tu risque de te retrouver avec un dépassement de quelques pixels dû a des arrondis improbable de IE

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 35
    Points : 7
    Points
    7
    Par défaut
    Le probleme n'est pas que les cellules fassent 100% de la largeur,

    J'ai toujours 3 cellules par ligne qui, a elles 3 representent 100% de la largeur.

    L'ennui est que la largeur de ces 3 cellules est variable et calculée avant le tableau dans mon javascript.

    Enfin ca fa etre plus clair la:

    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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
     
    var site = 3;
     
     
    document.write('ATTENTION! Cette page n\'est qu\'en test pour le moment, ne pas s\'y fier pour l\'instant. ');
    document.write('<br/><br/>');
     
     
     
     
    if(site == null)
    	{
    		document.write('Aucune donnée n\a été enregistrée');
    	}
    else
    	{
     
    	//Declaration des variables //
    	var nbs				= 3
     
    	var nbs_used 		= 5
    	var nbs_licensed 	= 3
    	var nbs_free 		= 2
     
    	var total 			=	nbs_used + nbs_licensed + nbs_free
     
    	var pct_used		=	( nbs_used / total ) * 100
    	var pct_licensed	=	( nbs_licensed / total ) * 100
    	var pct_free		=	( nbs_free / total ) * 100
     
     
     
    	//DEBUT DU PROGRAMME //
     
    	//mise en place de la structure avec table et premiere case : volumétrie utilisée //
     
    		document.write('<table border="0" bgcolor="#000000" width="90%" cellspacing="0" height=110>');
     
    		var i = 0;
    			while(i < nbs)
    				{
    				document.write('<tr>');
     
    				document.write('<td bgcolor="#FFFFCC" width="41%" > <font color="#000000"> 5 </font> </td> <td bgcolor="#CC3366" width="26%"> <font color="#FFFFFF"> 2 </font> </td> <td bgcolor="#9966FF" width="33%"> <font color="#FFFFFF"> 3 </font> </td>');
    				document.write('<tr> <td colspan="3" border="0">  <td></tr>');
    				document.write('</tr>');
     
    				i++
    				}
     
    		document.write('<tfoot> <tr> <td colspan="3"> <img src="images/tableau_histo/pourcent.jpg" width="100%" </tr> </tfoot>');
    		document.write('</table>');
    	}
    En fait a la place des 41, 26 et 33% j'ai besoin de récupérer les variables pct_used, pct_licensed et pct_free.

    Les chiffres que j'ai mis ne sont pas fixes, ils sont la pour que je voie a peu pres ce que ca donnera une fois que ca marche...
    Mais pour le moment ca marche pas

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 35
    Points : 7
    Points
    7
    Par défaut
    Rebonjour a tous,

    J'ai trouvé tout seul la solution a mon probleme, qui etait en fait toute bete

    je me fais honte mais bon, au cas ou quelqun d'aussi peu logique que moi passe sur le forum, voici la reponse:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <td bgcolor="#FFFFCC" width="',pct_used, '%">

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 664
    Points
    66 664
    Billets dans le blog
    1
    Par défaut
    oui donc pour le coup une solution php et pas javascript ^^


    haaaaaaaaaaaaa non une horrible "solution" (pansement) avec document.write ^^

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 35
    Points : 7
    Points
    7
    Par défaut
    Une horrible solution?

    Le document.write devait etre la de toute facon, le fait de l'utiliser ne change rien

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 664
    Points
    66 664
    Billets dans le blog
    1
    Par défaut
    je crois pouvoir affirmer que document.write est la fonction la plus dépassée et pourrie de javascript ...

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 35
    Points : 7
    Points
    7
    Par défaut
    Ah?

    Je n'etais pas au courant...

    Dans ce cas comment j'affiche tout ca dans mon nav?
    Je ne la trouve pas si mal perso, elle repond bien et qui dit vieille dit supportée par la plupart.

  10. #10
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 664
    Points
    66 664
    Billets dans le blog
    1
    Par défaut
    justement non ^^
    document.write à la facheuse tendance à ecraser le contenu précédent de la page
    Je lui préfère de loin l'utilisation du DOM (createElement)

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

Discussions similaires

  1. utiliser une variable pour enregistrer la taille max du tableau
    Par marco62118 dans le forum VB 6 et antérieur
    Réponses: 16
    Dernier message: 20/05/2015, 19h31
  2. [XL-2002] Utiliser une variable pour modifier un TCD
    Par Pesnoob dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 09/03/2011, 16h35
  3. concatener 2 variables pour definir le nom d'une variable
    Par ~Brouette~ dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 09/12/2008, 15h13
  4. Réponses: 1
    Dernier message: 27/11/2008, 10h55
  5. Réponses: 6
    Dernier message: 29/11/2007, 16h15

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