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 :

Cacher une colonne complete d'un formulaire


Sujet :

JavaScript

  1. #1
    Membre éclairé
    Inscrit en
    Février 2008
    Messages
    457
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 457
    Par défaut Cacher une colonne complete d'un formulaire
    Bonjour,

    J'ai un formulaire avec 3 radios boutons comme choix..
    J'aimerais que seul le radiobouton checked aient sa colonne appropriée visible..
    Dans cet exemple si je cache celui que je coche mais peu importe..

    Je n'arrive à cacher que les boutons à cocher et pas le texte associé !!

    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
     
    	 <script language="javascript">
    	 function cacher()
    	 {
    	   if(form1.choix1[0].checked) {form1.choix2[0].type="hidden"};
    	 }
    	 </script>
    </head>
    <body>
    <?php
    include_once('adodb/adodb.inc.php');
    print ('<TABLE BORDER="3"> 
            <form id="form1" name="form1" method="post" action="rep.php"> ');
    // Cas MS/ACCESS
    if($_POST["radiobutton"] == "1")
    {
    $nomBD = $_POST["AccessName"];
    print('<CAPTION >Managing the database : " ' . $nomBD . "\"</CAPTION>
          <tr id=\'titCol\'>
    	         <td> <input type=radio name=\"choix1\" value=\"0\" onClick=\"cacher()\"/>A whole table </td> 
    			 <td> <input type=radio name=\"choix1\" value=\"1\"/>A stored procedure </td> 
    			 <td> <input type=radio name=\"choix1\" value=\"2\"/>Your own SQL sentences </td> 
    	  </tr>");
    $db = ADONewConnection("ado_access");
    $db->debug=1; // permettre les messages de debugging
    $access ='C:\wamp\www\PHPTEST\\'. $nomBD.'.mdb';
    $mydsn = 'PROVIDER = Microsoft.Jet.OLEDB.4.0;' .
              'DATA SOURCE=' . $access . ';' ;
    $db->Connect($mydsn); //effectuer la connexion
    $db->SetFetchMode(ADODB_FETCH_ASSOC); // defaut : ADODB_FETCH_NUM
    $aTables = $db->MetaTables('TABLES'); 
    print('<tr> <td>'); // deuxieme ligne
    for($i=0;$i < count($aTables); $i++) // TABLES
    {
      print( "<input type=radio name=\"choix2\" value=\"".$i."\"/>" . $aTables[$i] . "<br/>\n");
     
    }
    print('</td>');
    Voici une partie du code.. merci

  2. #2
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    Première remarque la balise table ne doit en principe pas être utilisée pour faire de la mise en page et encore moins dans un formulaire ...

    Mais bon puisque c'est fait ...

    il faut boucler sur la collection
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementsByTagName('td')
    et mettre un
    soit en faisant un teste du modulo en focntion de la colonne voulue, soi ten faisant un i=i+nbrCol dans la boucle ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre éclairé
    Inscrit en
    Février 2008
    Messages
    457
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 457
    Par défaut
    Impeccable merci!

    Par contre.. pourrais-tu me dire pourquoi ne pas utiliser TABLE?

  4. #4
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    Parce les balises tables sont faites pour afficher des données tabulaires, par pour faire de la mise en page.
    Pour la mise en page dans une page il y a les div span et autre conteneurs ...
    Dans un form tu peux utiliser les divs, les spans, les fieldsets etc ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre éclairé
    Inscrit en
    Février 2008
    Messages
    457
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 457
    Par défaut
    Je vois..
    Par contre j'ai encore un petit problème..
    Avec le style.display , j'enlève carrément la colonne , je ne la cache pas..
    Donc lorsque je clique sur le choix numéro 3 par exemple , la 3è colonne s'affiche bien mais au mauvais endroit , dans la première colonne

    J'ai fais comme ceci :
    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
     
    function cacher()
    	 {
    	      table=document.getElementsByTagName('td');
    		  for(i =NBCOL;i<table.length;i++)
    		      table[i].style.display='none';
    	 }
    	 function montrer()
    	 {
    	   for(i=0;i<NBCOL;i++)
    	     {
    		   if(form1.choix1[i].checked)
    		       table[i+NBCOL].style.display="";
    			else
    			   table[i+NBCOL].style.display="none";
    		 }
    	 }

  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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    ha ben à ce moment là mets le style.width à 0
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre éclairé
    Inscrit en
    Février 2008
    Messages
    457
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 457
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    ha ben à ce moment là mets le style.width à 0
    à la place des style.display="none" ? j'ai essayé mais sans succès oO

  8. #8
    Membre éclairé
    Inscrit en
    Février 2008
    Messages
    457
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 457
    Par défaut
    Ahh j'ai trouvé..
    Je ne connaissais pas..

    C'est bien plus facile avec style.visibility="visible"/"hidden" .

    Merci.

  9. #9
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    le visibility doit te laisser des espces vides non ?

    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  10. #10
    Membre éclairé
    Inscrit en
    Février 2008
    Messages
    457
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 457
    Par défaut
    Oui mais c'était l'effet voulu.

    3 choix - - -
    et en dessous de chaque choix la colonne appropriée.

  11. #11
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    alors si c'est voulu
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

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

Discussions similaires

  1. [C#] Comment cacher une colonne d'un GridView ?
    Par dumser1 dans le forum ASP.NET
    Réponses: 15
    Dernier message: 11/12/2009, 15h58
  2. Cacher une colonne
    Par lapart dans le forum AWT/Swing
    Réponses: 19
    Dernier message: 27/02/2007, 09h59
  3. Réponses: 7
    Dernier message: 02/03/2006, 14h58
  4. Réponses: 3
    Dernier message: 24/02/2006, 12h30
  5. [C#] Cacher une colonne d'une dataGrid
    Par royrremi dans le forum ASP.NET
    Réponses: 2
    Dernier message: 27/05/2004, 16h00

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