Afficher désaficher une div avec un select dans un formulaire
Résolu
Lilou75
-
Lilou75 -
Lilou75 -
A voir également:
- Afficher désaficher une div avec un select dans un formulaire
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Afficher appdata - Guide
- Formulaire de reclamation instagram - Guide
- Afficher le 0 devant un nombre dans excel - Guide
5 réponses
Bonsoir
<select name="type_nc" id="type_nc" onChange="affiche_ncDIV(this.value)">
function affiche_ncDIV(typenc ){ let ncDiv = document.getElementById("ncDIV"); if (typenc != "1") { ncDiv.style.display = "none"; } else { ncDiv.style.display = "block"; } }
Voilà tout mon code... et cela ne fonctionne pas.
Il doit me manquer les bases
Il doit me manquer les bases
<html>
<head>
</head>
<body>
<form id="contrat" method="post" action="assistant_v1-0.php">
<label for="type_nc">Type de périmètre de non réinstallation :</label>
<select name="type_nc" id="type_nc" onChange="affiche_ncDIV()">
<option value="1">pas de clause de non réinstallation</option>
<option value="2">en km autour du cabinet :</option>
<option value="3">dans une ville ou arrd. :</option>
</select>
<script>
function affiche_ncDIV(typenc){
let ncDiv = document.getElementById("ncDIV");
if (typenc != "0") {
ncDiv.style.display = "none";
} else {
ncDiv.style.display = "block";
}
}
</script>
<div id=ncDIV style="display:none;">
<label for="perimetre_nc">Distance :</label>
<input id="perimetre_nc" type="text" name="perimetre_nc">
<label for="duree_nc">Durée :</label> <input id="duree_nc" type="number" min="0" step="1" name="duree_nc"><br>
</div>
</form>
</body>
<html>
Alors là, mea culpa !
je n'avais pas vu la ligne html.....
Bien, et cela fonctionne (bon, dans le mauvais sens mais j'ai inversé "none" et "block".... et c'est nikel.
Alors, un grand merci et désolé d'avoir zappé cette première ligne de code.
Je vais pouvoir dormir tranquille !
Merci beaucoup
je n'avais pas vu la ligne html.....
Bien, et cela fonctionne (bon, dans le mauvais sens mais j'ai inversé "none" et "block".... et c'est nikel.
Alors, un grand merci et désolé d'avoir zappé cette première ligne de code.
Je vais pouvoir dormir tranquille !
Merci beaucoup
J'ai eu l'idée de séparer en 2 div....
mais ça ne fonctionne pas. peut être que c'est idiot.
mais ça ne fonctionne pas. peut être que c'est idiot.
<html> <head> </head> <body> <form id="contrat" method="post" action="assistant_v1-0.php"> <label for="type_nc">Type de périmètre de non réinstallation :</label> <select name="type_nc" id="type_nc" onChange="affiche_ncDIV(this.value)"> <option value="1">pas de clause de non réinstallation</option> <option value="2">en km autour du cabinet :</option> <option value="3">dans une ville ou arrd. :</option> </select> <script> function affiche_ncDIV(typenc){ let ncDiv2 = document.getElementById("ncDIV2"); let ncDiv3 = document.getElementById("ncDIV3"); if (typenc = "2") { ncDiv2.style.display = "block"; ncDiv3.style.display = "none"; } else {} if (typenc = "3") { ncDiv2.style.display = "none"; ncDiv3.style.display = "block"; } else {} if (typenc = "1") { ncDiv2.style.display = "none"; ncDiv3.style.display = "none"; } else {} } </script> <div id=ncDIV2 style="display:none;"> <label for="perimetre_nc_km">Périmètre (en km):<input id="perimetre_nc_km" type="number" name="perimetre_nc_km"> <label for="duree_nc_km">Durée de la clause de non réinstallation (en année (si 0, il n'y aura aucune clause):</label> <input id="duree_nc_km" type="number" min="0" step="1" name="duree_nc_km" required><label>année(s)</label><br> </div> <div id=ncDIV3 style="display:none;"> <label for="perimetre_nc">Préciser le ou les aires géographiques :<input id="perimetre_nc" type="text" name="perimetre_nc" size="50"> <label for="duree_nc">Durée de la clause de non réinstallation (en année (si 0, il n'y aura aucune clause):</label> <input id="duree_nc" type="number" min="0" step="1" name="duree_nc" required><label>année(s)</label><br> </div> </form> </body> <html>
<!Doctype html> <html> <head> <meta charset='utf-8'> <title>Formulaire</title> </head> <body> <form id="contrat" method="post" action="assistant_v1-0.php"> <label for="type_nc">Type de périmètre de non réinstallation :</label> <select name="type_nc" id="type_nc" onChange="affiche_ncDIV(this.value)"> <option value="1">pas de clause de non réinstallation</option> <option value="2">en km autour du cabinet :</option> <option value="3">dans une ville ou arrd. :</option> </select> <div id=ncDIV2 style="display:none;"> <label for="perimetre_nc_km">Périmètre (en km): <input id="perimetre_nc_km" type="number" name="perimetre_nc_km"> <label for="duree_nc_km">Durée de la clause de non réinstallation (en année (si 0, il n'y aura aucune clause):</label> <input id="duree_nc_km" type="number" min="0" step="1" name="duree_nc_km" required> <label>année(s)</label> <br> </div> <div id=ncDIV3 style="display:none;"> <label for="perimetre_nc">Préciser le ou les aires géographiques : <input id="perimetre_nc" type="text" name="perimetre_nc" size="50"> <label for="duree_nc">Durée de la clause de non réinstallation (en année (si 0, il n'y aura aucune clause):</label> <input id="duree_nc" type="number" min="0" step="1" name="duree_nc" required> <label>année(s)</label> <br> </div> </form> <!-- Toujours mettre les scripts à la fin.. avant le </body> --> <script> function affiche_ncDIV(typenc){ let ncDiv2 = document.getElementById("ncDIV2"); let ncDiv3 = document.getElementById("ncDIV3"); if (typenc == "2") { ncDiv2.style.display = "block"; ncDiv3.style.display = "none"; }else if (typenc == "3") { ncDiv2.style.display = "none"; ncDiv3.style.display = "block"; }else if (typenc == "1") { ncDiv2.style.display = "none"; ncDiv3.style.display = "none"; } } </script> </body> <html>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ça semble fonctionner comme cela....
<script>
function affiche_ncDIV(typenc){
let ncDiv2 = document.getElementById("ncDIV2");
let ncDiv3 = document.getElementById("ncDIV3");
if (typenc == "1") {
ncDiv2.style.display = "none";
ncDiv3.style.display = "none";
}
else {
if (typenc == "3") {
ncDiv2.style.display = "none";
ncDiv3.style.display = "block";
}
else {
ncDiv2.style.display = "block";
ncDiv3.style.display = "none";
}}
}
</script>