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

PHP & Base de données Discussion :

afficher et cacher div php et javascript


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 46
    Points : 30
    Points
    30
    Par défaut afficher et cacher div php et javascript
    salut

    voila j'ai une page avec un formulaire dont un select qui permet de faire un choix qui renvoie sur une autre page

    lorsqu'on arrive dans cette page j'aimerais qu'en fonction du choix effectué certain div soit caché ou pas

    voici mon code pour la page du choix
    page_choix.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <select name="lst_produits">
            <option value="">--Choisir le type de produit--</option>
            <option value="">---------------------------</option>
                    <option value="1">Fruit</option>
                    <option value="2">Legume</option>
                    <option value="3">Boisson</option>
                    <option value="4">Plat</option>
     
            </select>
    		<input class="input-admin" type="submit" name="Enregistrer" value="OK" />
    et là la page ou se trouvent mes div que je veux cacher avec ma fonction dans le body
    choix.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
    <head>
    <?php $produitId = $_POST['lst_produits']; 	?>
    <script type="text/javascript">
    	function cacher(){
    	var produit =<?php echo $produitId; ?>;
    	if(produit==1){
    		document.getElementsById("fruit").style.display="inline";
    	}else{
    		document.getElementsById("legume").style.display="none";
    		document.getElementsById("boisson").style.display="none";
    		document.getElementsById("plat").style.display="none";
    	}
     
    }
    </script>
    </head>
     
    <body onLoad="cacher()">
     
    <div id=fruit> ......</div>
    <div id=legume> ......</div>
    <div id=boisson> ......</div>
    <div id=plat> ......</div>
    et cela ne fonctionne : si j'ai choisi fruit les autres div apparaissent toujours

    Ou est mon erreur ???

    Vous remerciant

    Cordialement

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    une solution :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <div class="list-produits" data-id="1"> ...produit-1...</div>
    <div class="list-produits" data-id="2"> ...produit-2...</div>
    <div class="list-produits" data-id="3"> ...produit-3...</div>
    <div class="list-produits" data-id="4"> ...produit-4...</div>

    Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function show_list_produits( produit_id )
    {
      var produits = Array.from(document.querySelectorAll(".list-produits"));
      produits.forEach( function( produit )
      {
        produit.style.display = ( produit_id == produit.dataset.id )? "block" : "none";
      });
    }
    window.onload = show_list_produits( <?php echo intval($_POST['lst_produits']); ?> );
    Dernière modification par Invité ; 23/04/2019 à 15h57.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 46
    Points : 30
    Points
    30
    Par défaut Div display none
    Salut

    J'ai pu afficher et cacher mes div en fonction de ma variable

    Donc au départ le div est display:none
    Il apparaît quand on choisit la bonne variable et là j'ai un problème : comme faire passer par la méthode post des valeurs contenus dans des inputs de ce div dans une autre page ??

    Vous remerciant

    Cordialement

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    à vue de nez : avec un formulaire en method="post".

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 46
    Points : 30
    Points
    30
    Par défaut Div display none
    Salut

    Oui c'est un formulaire avec post mais celui-ci ne "part" pas quand je fais apparaître mes div cachés avec des input de type texte

    Cordialement

  6. #6
    Invité
    Invité(e)
    Par défaut
    OK.

    Mais si tu ne montres pas ton code...

Discussions similaires

  1. Afficher et cacher une dropdownlist en javascript
    Par Naruto_kun dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 04/09/2016, 13h48
  2. PHP et Javascript afficher le retour d'un fonction
    Par guian dans le forum Général JavaScript
    Réponses: 27
    Dernier message: 25/05/2007, 17h09
  3. afficher cacher div
    Par calitom dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 06/03/2007, 11h35
  4. [CSS & JAVASCRIPT] Afficher/Masquer un div
    Par alexfrere dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 05/07/2006, 15h02
  5. afficher / cacher div
    Par Cruelo dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 25/11/2004, 13h48

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