Javascript et affichage des div
Résolu
swoog42
Messages postés
1060
Date d'inscription
Statut
Membre
Dernière intervention
-
swoog42 Messages postés 1060 Date d'inscription Statut Membre Dernière intervention -
swoog42 Messages postés 1060 Date d'inscription Statut Membre Dernière intervention -
Bonjour la communauté,
j'ai un petit soucis : je veux afficher une DIV selon le choix fait dans un SELECT. Mon problème est que seule la DIV 1 (de label "divid1") s'affiche, les autres ne s'affichant pas.
Précision : quand je choisi une DIV, les autres doivent s'effacer (ce qui fonctionne).
Voici un bout de code :
<form>
<select name="liste" style="width: 500px" onChange="visibilite(this);">
<option label="1">Article 1</option>
<option label="2">Article 2</option>
<option label="3">Article 3</option>
</select>
</form>
<div style="text-align: justify; display: none;" id="divid1" class="partie">
bla bla...
</div>
<br>
<div style="text-align: justify; display: none;" id="divid2" class="partie">
bla bla...
</div>
<br>
<div style="text-align: justify; display: none;" id="divid3" class="partie">
bla bla...
</div>
<br>
<script>
//*********************************************************
//Script qui compte le nombre de DIV de la CLASSE "partie"
//Nombre stocké dans nbDiv
//*********************************************************
var mesDiv = document.getElementsByTagName('div');
var nbDiv = 0;
for(var i=0; i < mesDiv.length; i++)
{
if(mesDiv[i].className == "partie")
{
nbDiv++;
}
}
//***********************************************
//Fonction qui affiche la DIV sélectionnée
//param : option ==> option choisie de le SELECT
//***********************************************
function visibilite(option)
{
var i;
var targetElement;
var ID;
ID = option.selectedIndex + 1;
//alert(nbDiv);
targetElement = document.getElementById("divid" + ID) ;
for( i = 1 ; i <= nbDiv ; i++)
{
document.getElementById("divid" + i).style.display = "none";
alert(i);
}
targetElement.style.display = "block" ;
alert('end');
}
</script>
Merci d'avance ;)
j'ai un petit soucis : je veux afficher une DIV selon le choix fait dans un SELECT. Mon problème est que seule la DIV 1 (de label "divid1") s'affiche, les autres ne s'affichant pas.
Précision : quand je choisi une DIV, les autres doivent s'effacer (ce qui fonctionne).
Voici un bout de code :
<form>
<select name="liste" style="width: 500px" onChange="visibilite(this);">
<option label="1">Article 1</option>
<option label="2">Article 2</option>
<option label="3">Article 3</option>
</select>
</form>
<div style="text-align: justify; display: none;" id="divid1" class="partie">
bla bla...
</div>
<br>
<div style="text-align: justify; display: none;" id="divid2" class="partie">
bla bla...
</div>
<br>
<div style="text-align: justify; display: none;" id="divid3" class="partie">
bla bla...
</div>
<br>
<script>
//*********************************************************
//Script qui compte le nombre de DIV de la CLASSE "partie"
//Nombre stocké dans nbDiv
//*********************************************************
var mesDiv = document.getElementsByTagName('div');
var nbDiv = 0;
for(var i=0; i < mesDiv.length; i++)
{
if(mesDiv[i].className == "partie")
{
nbDiv++;
}
}
//***********************************************
//Fonction qui affiche la DIV sélectionnée
//param : option ==> option choisie de le SELECT
//***********************************************
function visibilite(option)
{
var i;
var targetElement;
var ID;
ID = option.selectedIndex + 1;
//alert(nbDiv);
targetElement = document.getElementById("divid" + ID) ;
for( i = 1 ; i <= nbDiv ; i++)
{
document.getElementById("divid" + i).style.display = "none";
alert(i);
}
targetElement.style.display = "block" ;
alert('end');
}
</script>
Merci d'avance ;)
A voir également:
- Javascript et affichage des div
- Affichage double ecran - Guide
- Windows 11 affichage classique - Guide
- Telecharger javascript - Télécharger - Langages
- Problème affichage fenêtre windows 10 - Guide
- Div c++ - Télécharger - Langages
3 réponses
Bonsoir swoog42,
Pour afficher, j'utilise l'ordre suivant :
Pour afficher, j'utilise l'ordre suivant :
targetElement.style.display = ''; // 2 simple quotes
ca prend bien en compte le changement, mais toujours pas d'affichage...
Par contre, j'ai un autre fil ouvert, je te propose de le suivre :
https://forums.commentcamarche.net/forum/affich-16939811-javascript-et-affichage-des-div#12
Par contre, j'ai un autre fil ouvert, je te propose de le suivre :
https://forums.commentcamarche.net/forum/affich-16939811-javascript-et-affichage-des-div#12