Bonjour.
J'ai créé un formulaire comportant deux boutons radio "oui / non". En cliquant sur "oui", une liste de checbox est activée. En cliquant sur "non", celle-ci est désactivée et toutes les cases sont automatiquement décochées.
Mais cela ne fonctionne uniquement si tous les éléments checkbox ont le même "name"... ce qui ne facilite pas le traitement du formulaire...
Voici le code du formulaire :
Et le fichier javascript :
Comment résoudre le problème ?
Merci beaucoup.
[/i]
J'ai créé un formulaire comportant deux boutons radio "oui / non". En cliquant sur "oui", une liste de checbox est activée. En cliquant sur "non", celle-ci est désactivée et toutes les cases sont automatiquement décochées.
Mais cela ne fonctionne uniquement si tous les éléments checkbox ont le même "name"... ce qui ne facilite pas le traitement du formulaire...
Voici le code du formulaire :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script language="JavaScript" src="scripttest.js" type="text/javascript"></script>
</head>
<body onload="onLoad();">
<h1>Bon pour un cours gratuit</h1>
<p>Pour recevoir par mail (au format PDF) votre cours gratuit,<b> sans aucun engagement de votre part</b>, remplissez le formulaire ci-dessous.</p>
<form name="formulaire" method="post" action="/cgi-bin/bnbform.cgi" onSubmit="return verification()">
<INPUT TYPE="hidden" NAME="data_order" VALUE="civilite,nom,prenom,email,choix_cours,C1,C2,C3,C4">
<INPUT TYPE="hidden" NAME="autorespond" VALUE="no">
<INPUT TYPE="hidden" NAME="submit_to" VALUE="info@...">
<INPUT TYPE="hidden" NAME="form_id" VALUE="Demande de documentation">
<INPUT TYPE="hidden" NAME="ok_url" VALUE="http://www..../merci.html">
<table width="88%" border="0">
<tr>
<td width="35%">*Civilité</td>
<td width="64%"><select size="1" name="civilite">
<option>Mademoiselle</option>
<option>Madame</option>
<option>Monsieur</option>
</select>
</td>
</tr>
<tr>
<td>*Nom</td>
<td><input type="text" name="nom" size="40"></td>
</tr>
<tr>
<td>*Prénom</td>
<td><input type="text" name="prenom" size="40"></td>
</tr>
<tr>
<td>*Email</td>
<td><input type="text" name="email" size="40"> </td>
</tr>
<tr>
<td height="28">*Confirmer l'email</td>
<td><input type="text" name="email2" size="40"></td>
</tr>
</table>
<h1>Je désire recevoir par mail le catalogue des formations</h1>
<table width="88%" border="0">
<tr>
<td height="42" width="35%"> </td>
<td width="64%">
<input id="chk0" type="radio" name="choix_cours" value="oui" onclick="onYes();" checked>Oui<br>
<input id="chk1" type="radio" name="choix_cours" value="non" onclick="onNo(); for(i=0;i<document.formulaire.C1.length;i++){document.formulaire.C1[i].checked=false};">Non</td><br>
</tr>
<tr>
<td height="15"> </td>
<td> </td>
</tr>
<tr>
<td height="28">Je suis intéressé par</td>
<td>
<input id="id0" type="checkbox" name="C1" value="debutant">La formation pour débutant<br>
<input id="id1" type="checkbox" name="C1" value="perfectionnement">Le cycle de perfectionnement<br>
<input id="id2" type="checkbox" name="C1" value="psychologie">Le cycle de psychologie<br>
<input id="id3" type="checkbox" name="C1" value="criminologie">Le cycle de criminologie<br>
</td>
</tr>
<tr>
<td height="40" colspan="2"><input type="submit" name="submit" value="Envoyer le formulaire"></td>
</tr>
</table>
</form>
</body>
</html>
Et le fichier javascript :
function updateBox()
{
var id=document.getElementById("chk0");
enableBox(id.checked);
}
function enableBox(yes)
{
for(var i=0;i<4;i++)
{
var id=document.getElementById("id"+i);
id.disabled=!yes;
}
}
function onYes()
{
updateBox();
}
function onNo()
{
updateBox();
}
function onLoad()
{
updateBox();
}
function verification()
{
if(document.formulaire.nom.value == "") {
alert("Veuillez saisir votre nom");
document.formulaire.nom.focus();
return false;
}
else
if(document.formulaire.prenom.value == "") {
alert("Veuillez saisir votre prénom");
document.formulaire.prenom.focus();
return false;
}
else
if(document.formulaire.email.value == "") {
alert("Veuillez saisir votre adresse électronique");
document.formulaire.email.focus();
return false;
}
else
if(document.formulaire.email.value.indexOf('@') == -1) {
alert("Merci de vérifier votre adresse électronique");
document.formulaire.email.focus();
return false;
}
else
if (document.formulaire.email.value != document.formulaire.email2.value) {
alert("Merci de vérifier et de confirmer votre email");
document.formulaire.email.focus();
return false;
}
return true;
}
Comment résoudre le problème ?
Merci beaucoup.
[/i]