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 :

Afficher masquer des données


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 98
    Par défaut Afficher masquer des données
    bonjour,
    je souhaiterai lorsque j'extrait mes données de ma base sql faire en sorte que sur la page lorsque je clique sur le titre de ma news, je fait afficher en dessous du titre la news
    exemlpe :

    j'ai essayé différentes methode qui me font passé par des script css...

    actuellment je suis sur un script qui fonctionne mais juste en partie. j'affiche bien et cache bien mon texte comme je le souahite mais juste pour ma premiere news. les autres ne fonctionnes pas (enfin si je veus faire afficher la news 4 , c'est la 1 qui s'affiche)
    j'aurai besoin de vos connaissances pour finir ce petit code merci.

    dans mon css :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #monblock {
    display: none;
    }
    puis dans ma page php:
    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
     
    dans le HEAD :
    <script type="text/javascript">
    function Show(id)
    {
    var d = document.getElementById(id);
    var hid = d.style.display;
     
    if (d){
    if (hid == "block"){
    d.style.display = 'none';
    }else{
    d.style.display = 'block';
    }
    }
    }
    </script>
     
     
     
    puis dans le Body :
    <?php 
      // On se connecte     
      include("../admin/connexion-sql.php");
            
            mysql_query("SET NAMES UTF8"); 
            $requete = mysql_query("SELECT * FROM newsletterctn ORDER BY id DESC"); 
                    while( $result = mysql_fetch_array( $requete ) )
                    {       ?>
     
     
     
      <?php 
      echo '<h1>Newsletter N° '.$result['numero'];
      echo ' | '.$result['titre'].'</h1>';?>
      <div onclick="Show('monblock')" style="cursor: pointer;">voir contenu !</div>
      <div id="monblock"><?php echo 'Message '.$result['message'];?></div>
     
     
    <?php }
      ?>

  2. #2
    Membre chevronné Avatar de goodpz
    Profil pro
    Inscrit en
    Février 2007
    Messages
    475
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 475
    Par défaut
    J'ai l'impression que toutes tes news ont le même id="monblock". Donc document.getElementById(id) va retourner le premier div qui a cet id.
    t'as qu'a rajouter un index numerique, du genre monblock1, monblock2... :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $i = 0;
    while (..) {
      //..
      ++$i;
      echo '<div onclick="Show(\'monblock'.$i.'\')" style="cursor: pointer;">voir contenu !</div>';
      echo '<div id="monblock'.$i.'">Message '.$result['message'].'</div>';
    }
    Donc bien sûr,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #monblock {
      display: none;
    }
    ..ne va plus fonctionner comme tu le souhaites. T'a qu'a rajouter une class css commune à tous tes blocks qui ferait le display: none. Tu peux aussi directement mettre "display: none" dans l'attribut style lors du echo.
    Tu peux aussi te débarrasser de ton code javascript qui switch le style.display pour ne conserver que l'ajout et le retrait d'une class css qui elle contient un "display: none".

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 98
    Par défaut
    Ok super merci sa fonctionne. j'ai créé un display none et le tour est joué.

    juste une petite question.
    là dans mon cas lorsque je clique sur "voir le contenu" je fais afficher le contenu (je suis obligé de cliquer 2fois dessus pour afficher --> bizard)
    j'aimerai que lorsque j'affiche le contenu je n'ai plus "voir le contenu" mais "masquer le contenu" (ou remplacer par une croix (+) qui se transforme en trait (-)).

Discussions similaires

  1. [XL-2003] Afficher ou masquer des données affichées en mode plan
    Par Baluteaud dans le forum Excel
    Réponses: 0
    Dernier message: 02/04/2014, 16h57
  2. Liste déroulante : afficher/masquer des lignes
    Par arxpression dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 17/08/2006, 16h50
  3. Afficher masquer des blocs sans javascript
    Par Space Cowboy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 10
    Dernier message: 24/09/2005, 10h37
  4. [CR9]Masquer des données (colonnes) suivant valeur champ
    Par neo.51 dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 05/09/2005, 09h43
  5. Afficher / masquer des champs
    Par mickeliette dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 11/08/2005, 11h51

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