Champ formulaire visible selon liste deroulante [Résolu]

Signaler
Messages postés
379
Date d'inscription
mardi 6 décembre 2005
Statut
Membre
Dernière intervention
8 octobre 2008
-
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
-
bonjour,
je suis en train de faire un formulaire pour un ajout de materiel
mais en fonction du type de matériel ( si c'est un ordinateur ou une imprimante : par exemple)
les champs a remplir ne sont pas les mêmes
est ce que on peut m'aider svp ?
si il y a pas assez d explication ou autre signalez le moi je ferai de mon mieux
voici ce que j'ai fait :
============

<html>
<head>
<title>Ajout matériel</title>
<script language="text/javascript">
function apparence(type)
{
if(type==3 || type==4)
{
document.getElementById("champordi").style.visibility="visible";
}else{
document.getElementById("champordi").style.visibility="hidden";
}
}
</script>
</head>

<?php
include('../config.php');
?>
<fieldset><legend align="center">Ajout de matériel</legend>
<form action="confirmajoutmatériel.php" method="POST" name="formulaire">
N° de série:,
,
----
Type matériel:,
<select name="type" onChange="apparence(this.value);">
<?php
$sql = "SELECT * FROM $table_type";
$query=mysql_query($sql) or die ('Erreur');
$nb=mysql_num_rows($query); //nbr de ligne de résultat de la requête
if ($nb=0)
{
echo '<option>---Aucun Type---</option>';
} else {
echo'<option value="" selected>---Séléctionnez le type---</option>';
while ($list2 = mysql_fetch_array($query))
{
echo '<option value='.$list2['id_type_reseau'].'>'.$list2['type_reseau'].'</option>';
}
}
?>
</select>,
----
Modèle :,
,
----
Bon de commande :,
,
----
Admin/Pédag :,
<select name="stat">
<option value="" selected>---Séléctionnez le statut---</option>
<option value="Adiminstratif">Adiminstratif</option>
<option value="Pédagogique">Pédagogique</option>
</select>,
----
Nom matériel :,
,
<!-- Champ visible seulement si c est un ordinateur-->
----
<table border="0" id="champordi" style="visibility:hidden">
----, CPU :</td>
,
----
Mémoire vive(RAM) :,
,
----
Carte Réseau :,
,
----
Carte Graphique :,
,
----
Carte Son :,
,
----
Lecteur CD/DVD:,
,
----
Graveur CD/DVD :,
,
----
Système d'exploitation :,
,
----
Lecteur disquette :,
,
----
DLT :,
,
----
Logiciels spécifiques :,
<textarea name="soft" rows="5" cols="40" onClick="this.value='';">placez vos logiciels spécifiques !!!
</textarea>,

</td></tr>
<tr><td colspan="2" align="center"></td>
<!-- -->
</tr>
</table>
</form>
</fieldset>

</html>

6 réponses

Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
<script type="text/javascript">
function apparence(liste)
{
if(liste[liste.selectedIndex].value=="3" || liste[liste.selectedIndex].value=="4")
{
document.getElementById("champordi").style.visibility="visible";
}else{
document.getElementById("champordi").style.visibility="hidden";
}
}
</script>

s'il y a bien 3 ou 4 dans <option value="3 ou 4">??</option>
dans les lignes où c'est nécessaire
car ici on n'a pas la page html mais le php, alors on ne peut pas dire...
moi, j'éviterais les names, variables.. qui ressemblent par trop à ce
que connait le JavaScript.html ( type par exemple pour le name du select )

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
Bonjour,
la réponse est presque la même qu'ici :
http://www.javascriptfr.com/infomsg/GRISER-BOUTONS-RADIO-3_712161.aspx
sauf que là on invalide des radios ( bof )
si il y a pas assez d'explications ou autre signalez le moi je ferai de mon mieux
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO></S< body>
Messages postés
379
Date d'inscription
mardi 6 décembre 2005
Statut
Membre
Dernière intervention
8 octobre 2008

<html>
<head>
<title>Ajout matériel</title>
<script language="text/javascript">
function apparence(liste)
{
if(type[type.selectedIndex].value=="3" || type[type.selectedIndex].value=="4")
{
document.getElementById("champordi").style.visibility="visible";
}else{
document.getElementById("champordi").style.visibility="hidden";
}
}
</script>
</head>

<?php
include('../config.php');
?>
<fieldset><legend align="center">Ajout de matériel</legend>
<form action="confirmajoutmatériel.php" method="POST" name="formulaire">
N° de série:,
,
----
Type matériel:,
<select name="type" onChange="apparence(this);">
<?php
$sql = "SELECT * FROM $table_type";
$query=mysql_query($sql) or die ('Erreur');
$nb=mysql_num_rows($query); //nbr de ligne de résultat de la requête
if ($nb=0)
{
echo '<option>---Aucun Type---</option>';
} else {
echo'<option value="" selected>---Séléctionnez le type---</option>';
while ($list2 = mysql_fetch_array($query))
{
echo '<option value='.$list2['id_type_reseau'].'>'.$list2['type_reseau'].'</option>';
}
}
?>
</select>,
----
Modèle :,
,
----
Bon de commande :,
,
----
Admin/Pédag :,
<select name="stat">
<option value="" selected>---Séléctionnez le statut---</option>
<option value="Adiminstratif">Adiminstratif</option>
<option value="Pédagogique">Pédagogique</option>
</select>,
----
Nom matériel :,
,
<!-- Champ visible seulement si c est un ordinateur-->
----
<table border="0" id="champordi" style="visibility:hidden">
----, CPU :</td>
,
----
Mémoire vive(RAM) :,
,
----
Carte Réseau :,
,
----
Carte Graphique :,
,
----
Carte Son :,
,
----
Lecteur CD/DVD:,
,
----
Graveur CD/DVD :,
,
----
Système d'exploitation :,
,
----
Lecteur disquette :,
,
----
DLT :,
,
----
Logiciels spécifiques :,
<textarea name="soft" rows="5" cols="40" onClick="this.value='';">placez vos logiciels spécifiques !!!
</textarea>,

</td></tr>
<tr><td colspan="2" align="center"></td>
<!-- -->
</tr>
</table>
</form>
</fieldset>

</html>
Messages postés
379
Date d'inscription
mardi 6 décembre 2005
Statut
Membre
Dernière intervention
8 octobre 2008

bonjour, g regarder le script a partir du lien que tu m'as envoyé g fait quelque test et sa fonctionne toujours pas il n'y a rien qui apparaît
je ne comprends pas pk ?
Messages postés
379
Date d'inscription
mardi 6 décembre 2005
Statut
Membre
Dernière intervention
8 octobre 2008

super c bon sa marche je te remercie cordialement bultez
sa fait 2 jours ke je suis deçu je ne savait plus ou donné de la tête
encore merci
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
avec IE il faut activer le debugger, avec FF regarder la console JavaScript
déjà, il y aurait eu une erreur "'type' undefined".
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>