Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Griser et dégriser des cases

1 réponse
Avatar
Pascal
Bonjour,

J'ai fait un formulaire. Pour pouvoir ecrire sur les champs textes, il
faut d'abord cocher la case devant. J'arrive à griser les cases par un
petit code javascript. Mais le problème, c'est qu'au lancement, les
champs textes ne sont pas griser. Il faut avoir cliqué au moins une fois
sur les cases...

Deuxième problème, je voudrais que dans la listebox, si l'option
"cheque" est choisie, que le champ texte "num de cheque", soit dégriser.
Et ça j'arrive pas à le faire.

Voici mon code :
<FORM name="rech" method=post action="rechercher.jsp">
Entrer les critères de recherche après avoir préalablement coché la case
correspondante

<TABLE BORDER=0>
<TR>
<TD><INPUT type=checkbox name="ckMontant" onclick="javascript:
if(!(document.rech.ckMontant.checked))
{document.rech.montant.disabled=true;
document.rech.montant.checked=false; } else
document.rech.montant.disabled=false"></TD>
<TD>Montant</TD>
<TD><INPUT type=text name="montant"></TD>
</TR>

<TR>
<TD><INPUT type=checkbox name="ckDateDebut" onclick="javascript:
if(!(document.rech.ckDateDebut.checked))
{document.rech.dateDebut.disabled=true;
document.rech.dateDebut.checked=false; } else
document.rech.dateDebut.disabled=false"></TD>
<TD>Date de début (jjmmaaaa)</TD>
<TD><INPUT type=text name="dateDebut"></TD>
</TR>

<TR>
<TD><INPUT type=checkbox name="ckDateFin" onclick="javascript:
if(!(document.rech.ckDateFin.checked))
{document.rech.dateFin.disabled=true;
document.rech.dateFin.checked=false; } else
document.rech.dateFin.disabled=false"></TD>
<TD>Date de fin (jjmmaaaa)</TD>
<TD><INPUT type=text name="dateFin"></TD>
</TR>

<TR>
<TD><INPUT type=checkbox name="ckTypeOperation"
onclick="javascript: if(!(document.rech.ckTypeOperation.checked))
{document.rech.typeOperation.disabled=true;
document.rech.typeOperation.checked=false; } else
document.rech.typeOperation.disabled=false"></TD>
<TD>Type d'Opération</TD>
<TD>
<SELECT name="typeOperation">
<OPTION VALUE="virement">Virement</OPTION>
<OPTION VALUE="retrait">Retrait</OPTION>
<OPTION VALUE="cheque">Chèque</OPTION>
<OPTION VALUE="paiement">Paiement</OPTION>
</SELECT>
</TD>
</TR>
<TR>
<TD>Num chèque</TD>
<TD><INPUT type=text name="numCheque" onclick="javascript:
if((document.rech.ckTypeOperation.value != "cheque"))
{document.rech.numCheque.disabled=true;
document.rech.numCheque.checked=false; } else
document.rech.numCheque.disabled=false"></TD>
</TR>
</TR>

<TR>
<TD><INPUT type="submit" value="Envoyer"></TD>
<TD><INPUT type="reset" value="Effacer"></TD>
</TR>
</TABLE>
</FORM>

1 réponse

Avatar
ASM
Bonjour,

J'ai fait un formulaire. Pour pouvoir ecrire sur les champs textes, il
faut d'abord cocher la case devant. J'arrive à griser les cases par un
petit code javascript. Mais le problème, c'est qu'au lancement, les
champs textes ne sont pas griser. Il faut avoir cliqué au moins une fois
sur les cases...


qu'est-ce que çà veut dire "griser" ?
(mettre de la couleur grise dans l'machin ?)

tu n'as qu"à avoir tous tes champs texte assortis de l'attribut 'disabled'
(écrit en dur dans le code html)

<input disabled type="text" name="nom" value="" size="15" />
<input type="checkbox" onclick="nom.disabled = !nom.disabled;" />

Deuxième problème, je voudrais que dans la listebox, si l'option
"cheque" est choisie, que le champ texte "num de cheque", soit dégriser.
Et ça j'arrive pas à le faire.


<select onchange="var k = this.options.selectedIndex;
if(this.options[k].value == 'cheque') numCheque.disabledúlse;
if(k==0) alert('choisir un item dans la liste');
">


Voici mon code :


ce serait mieux sans table

<FORM name="rech" method=post action="rechercher.jsp">
Entrer les critères de recherche après avoir préalablement coché la case
correspondante

<TABLE BORDER=0>
<TR>
<TD><INPUT type=checkbox name="ckMontant" onclick="javascript:
if(!(document.rech.ckMontant.checked))
{document.rech.montant.disabled=true;


là on a un blème qque part ...
tu ne peux checker un input text ('montant')

document.rech.montant.checkedúlse; } else
document.rech.montant.disabledúlse"></TD>
<TD>Montant</TD>
<TD><INPUT type=text name="montant"></TD>
</TR>

<TR>
<TD><INPUT type=checkbox name="ckDateDebut" onclick="javascript:
if(!(document.rech.ckDateDebut.checked))
{document.rech.dateDebut.disabled=true;
document.rech.dateDebut.checkedúlse; } else
document.rech.dateDebut.disabledúlse"></TD>
<TD>Date de début (jjmmaaaa)</TD>
<TD><INPUT type=text name="dateDebut"></TD>
</TR>

<TR>
<TD><INPUT type=checkbox name="ckDateFin" onclick="javascript:
if(!(document.rech.ckDateFin.checked))
{document.rech.dateFin.disabled=true;
document.rech.dateFin.checkedúlse; } else
document.rech.dateFin.disabledúlse"></TD>
<TD>Date de fin (jjmmaaaa)</TD>
<TD><INPUT type=text name="dateFin"></TD>
</TR>

<TR>
<TD><INPUT type=checkbox name="ckTypeOperation" onclick="javascript:
if(!(document.rech.ckTypeOperation.checked))
{document.rech.typeOperation.disabled=true;
document.rech.typeOperation.checkedúlse; } else
document.rech.typeOperation.disabledúlse"></TD>
<TD>Type d'Opération</TD>
<TD>
<SELECT name="typeOperation">
<OPTION VALUE="virement">Virement</OPTION>
<OPTION VALUE="retrait">Retrait</OPTION>
<OPTION VALUE="cheque">Chèque</OPTION>
<OPTION VALUE="paiement">Paiement</OPTION>
</SELECT>
</TD>
</TR>
<TR>
<TD>Num chèque</TD>
<TD><INPUT type=text name="numCheque" onclick="javascript:
if((document.rech.ckTypeOperation.value != "cheque"))
{document.rech.numCheque.disabled=true;
document.rech.numCheque.checkedúlse; } else
document.rech.numCheque.disabledúlse"></TD>
</TR>
</TR>

<TR>
<TD><INPUT type="submit" value="Envoyer"></TD>
<TD><INPUT type="reset" value="Effacer"></TD>
</TR>
</TABLE>
</FORM>



--
Stephane Moriaux et son [moins] vieux Mac