Afficher/Masquer plusieurs DIVs avec Sélectionnez à l'aide de jQuery

Je ont essentiellement la même situation que la personne en question est la suivante:

Lien: comment faire pour afficher/masquer les divs par sélectionner.(jquery)

Grâce à une vaste recherche dans Google, j'ai été en mesure de venir avec plusieurs différentes méthodes dans lequel les gens se réclamer de leur méthode fonctionne. Je n'ai pas encore d'obtenir tout fonctionne correctement encore. Je ne sais pas encore assez sur jQuery pour bien comprendre comment écrire ce à partir de zéro, j'ai donc compter sur de très bons exemples pour l'instant.

Ce que j'ai essayé de travailler avec (basé sur les exemples que j'ai trouvé et essayé):

<script type="text/javascript">
    (document).ready(function() {
        ('.box').hide();<br/>
        ('#dropdown').change(function() {
        ('#divarea1')[ ($(this).val() == 'area1') ? 'hide' : 'show' ]()
        ('#divarea2')[ ($(this).val() == 'area2') ? 'hide' : 'show' ]()
        ('#divarea3')[ ($(this).val() == 'area3') ? 'hide' : 'show' ]()
        });
    });
</script>
<form>
    <select id="dropdown" name="dropdown">
        <option value="0">Choose</option>
        <option value="area1">DIV Area 1</option>
        <option value="area2">DIV Area 2</option>
        <option value="area3">DIV Area 3</option>
    </select>
</form>
<div id="divarea1" class="box">DIV Area 1</div>
<div id="divarea2" class="box">DIV Area 2</div>
<div id="divarea3" class="box">DIV Area 3</div>
  • Note: j'utilise des supports plutôt que le moins-et plus-que les panneaux de signalisation de code html permettant d'afficher correctement ce message.

Ce que j'obtiens quand je test ceci:

  • Lors du premier chargement si rien n'est sélectionné => Pas de DIV, c'est afficher.
  • Lorsque je sélectionne DIV Zone 1 => DIV Zone 2 et 3 sont affichés.
  • Lorsque je sélectionne DIV Zone 2 => DIV Zone 1 et 3 sont affichés.
  • Lorsque je sélectionne DIV Domaine 3 => DIV Zone 1 et 2 sont affichés.

Mon cerveau est frit pour la journée. Que puis-je faire pour résoudre ce problème?

Pas de réponse à votre question, mais d'explorer jQuery#basculer méthode conditionnelle cacher/montrer.

OriginalL'auteur | 2009-09-11