Bonjour, je créer un site intranet dans le cadre de mon stage de fin de DUT informatique.
Description du code : c 'est un formulaire de recherche : une liste pour selectionner le critere et une zone de saisie pour le renseigner. Une checkbox quand elle est cochée fais apparraite un autre select et un autre input.
Le probleme c'est que la valeur du premier select ( le critere de recherche ) nest pas envoyer a l'autre page. Alors que le deuxième select fonctionne ainsi que les 2champs de saisie .
J utilise 3 formulaires : un de depart ,un intermediaire caché, un dernier qui recupere les info des 2 precedents qui renvoit les infos à la page suivant
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "
[ Lien ]">
<html xmlns="
[ Lien ]" xml:lang="fr" >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<link rel="stylesheet" media="screen" type="text/css" title="Design" href="diabete.css" />
<title> Recherche </title>
<script language="JavaScript">
function changer() {
nc6 = (typeof(window.controllers) != 'undefined' && type(window.locationbar) != 'undefined')? true:false;
nc4 = (document.layers)? true:false;
ie4 = (document.all)? true:false;
if (ie4){
if (document.formulaire.more.checked)
document.all.suite.style.visibility ="visible";
else
{document.all.suite.style.visibility ="hidden"; }
}
if (nc6){
if(document.formulaire.more.checked)
eval('document.getElementById("suite").style').visibility = 'visible';
else
{eval('document.getElementById("suite").style').visibility = 'hidden';}
}
if (nc4){
eval('document.' + objet).visibility = 'visible';
}
remplir();
}
// Fonction plaçant les données saisies dans le formulaire final
function remplir() {
document.fin.critere1.value=document.formulaire.critere1.value;
if (document.formulaire.more.checked)
{document.fin.more.value ="yes"; }
document.fin.choix.value=document.formulaire.choix1.options[document.context.choix2.selectedIndex].value;
}
// Fonction pour l'ajout de la saisie dans la liste vers le formulaire final
function ajout() {
document.fin.critere2.value=document.context.critere2.value;
document.fin.choix2.value=document.context.choix2.options[document.context.choix2.selectedIndex].value;
}
</script>
</head>
<body>
<form name="formulaire">
<table class="table3">
<th colspan="2"> Recherche Patient</th>
<tr>
<td align="left">Criteres de Recherches :</td>
<td align="right">
<select name="choix1" OnBlur="remplir()">
<option value="rien">--Choisir le critère de recherche--</option>
<option value="nomp">Par Nom</option>
<option value="prenomp">Par Prénom</option>
<option value="daten">Par Date de naissance (jj/mm/aaaa)</option>
<option value="nip">Par Numéro de dossier unique</option>
</select>
</td>
<td> <input type="text" name="critere1" value="" Onblur="remplir()"/></td>
</tr>
<tr><td> <input type="checkbox" name="more" OnClick="changer()"/> Recherches à criteres multiples</td></tr>
</table>
</form>
<div id="suite" name="suite" style="position:relative; visibility:hidden;">
<form name="context">
<table class="table3">
<tr>
<td> <select name="choix2" Onchange="ajout()">
<option value="">--Choisir le critère de recherche--</option>
<option value="nomp">Par Nom</option>
<option value="prenomp" >Par Prénom</option>
<option value="daten">Par Date de naissance (jj/mm/aaaa)</option>
<option value="nip">Par Numéro de dossier unique</option>
</select>
</td>
<td> <input type="text" name="critere2" Onblur="ajout()"/> </td>
</tr>
</table>
</form>
</div>
<form name="fin" action="accueil.php?action=search2" method="get">
<input type="hidden" name="critere1"/>
<input type="hidden" name="choix"/>
<input type="hidden" name="more"/>
<input type="hidden" name="critere2"/>
<input type="hidden" name="choix2"/>
<input type="submit" value="Rechercher"/>
</form>
</body>
</html>
Merci Bonne Journée