Actualisation automatique d'une liste déroulante - HTML/CSS - Programmation
Marsh Posté le 02-05-2002 à 10:18:10
Merci
mais en fait cela ne m'aide pas trop vu que je n'est pas de base de donnée derriere...enfin pas pour le moment
Marsh Posté le 02-05-2002 à 11:09:39
Personne pour me filer un coup de main siouplait
Je vous donne ce que je veux faire.
C'est pour une recherche:
Mon premier menu deroulant a 2 choix => Type et theme.
Mon second menu deroulant doit etre affiche dynamikement en fonction du choix du premier donc si
Type => rapport,compte-rendu,dossier
theme => entreprise,commune,finances,budget,environnement
Marsh Posté le 02-05-2002 à 11:27:19
pas de php ? pas de BD ?
"aficher source" pour voir le code javascript pure...
<SCRIPT LANGUAGE="JavaScript">
function ModifierListe(code_item) {
lg = document.frmDemo1.zlItem.length;
// On vide la liste
for (i = lg - 1; i >= 0; i--) {
document.frmDemo1.zlItem.options[i] = null;
}
code_rub = document.frmDemo1.zlRubrique.selectedIndex;
if (document.frmDemo1.zlRubrique.options[code_rub].value == 1) {
document.frmDemo1.zlItem.length = 4;
document.frmDemo1.zlItem.options[0].value = 2;
document.frmDemo1.zlItem.options[0].text = "ASP";
if (code_item == 2) document.frmDemo1.zlItem.options[0].selected = true;
document.frmDemo1.zlItem.options[1].value = 4;
document.frmDemo1.zlItem.options[1].text = "C++";
if (code_item == 4) document.frmDemo1.zlItem.options[1].selected = true;
document.frmDemo1.zlItem.options[2].value = 3;
document.frmDemo1.zlItem.options[2].text = "JavaScript";
if (code_item == 3) document.frmDemo1.zlItem.options[2].selected = true;
document.frmDemo1.zlItem.options[3].value = 1;
document.frmDemo1.zlItem.options[3].text = "PHP";
if (code_item == 1) document.frmDemo1.zlItem.options[3].selected = true;
}
if (document.frmDemo1.zlRubrique.options[code_rub].value == 2) {
document.frmDemo1.zlItem.length = 5;
document.frmDemo1.zlItem.options[0].value = 8;
document.frmDemo1.zlItem.options[0].text = "FreeBSD";
if (code_item == 8) document.frmDemo1.zlItem.options[0].selected = true;
document.frmDemo1.zlItem.options[1].value = 5;
document.frmDemo1.zlItem.options[1].text = "Linux";
if (code_item == 5) document.frmDemo1.zlItem.options[1].selected = true;
document.frmDemo1.zlItem.options[2].value = 7;
document.frmDemo1.zlItem.options[2].text = "Mac OS X";
if (code_item == 7) document.frmDemo1.zlItem.options[2].selected = true;
document.frmDemo1.zlItem.options[3].value = 9;
document.frmDemo1.zlItem.options[3].text = "Unix";
if (code_item == 9) document.frmDemo1.zlItem.options[3].selected = true;
document.frmDemo1.zlItem.options[4].value = 6;
document.frmDemo1.zlItem.options[4].text = "Windows";
if (code_item == 6) document.frmDemo1.zlItem.options[4].selected = true;
}
if (document.frmDemo1.zlRubrique.options[code_rub].value == 3) {
document.frmDemo1.zlItem.length = 3;
document.frmDemo1.zlItem.options[0].value = 10;
document.frmDemo1.zlItem.options[0].text = "MySQL";
if (code_item == 10) document.frmDemo1.zlItem.options[0].selected = true;
document.frmDemo1.zlItem.options[1].value = 12;
document.frmDemo1.zlItem.options[1].text = "Oracle";
if (code_item == 12) document.frmDemo1.zlItem.options[1].selected = true;
document.frmDemo1.zlItem.options[2].value = 11;
document.frmDemo1.zlItem.options[2].text = "PostgreSQL";
if (code_item == 11) document.frmDemo1.zlItem.options[2].selected = true;
}
}
</SCRIPT>
<FORM METHOD=POST NAME='frmDemo1'><BR> <B>Rubriques</B> <SELECT NAME='zlRubrique' onChange='ModifierListe(-1)'>
<OPTION VALUE='1'>Langage</OPTION>
<OPTION VALUE='2'>OS</OPTION>
<OPTION VALUE='3'>SGBD</OPTION>
</SELECT>
<B>Items</B> <SELECT NAME='zlItem'>
<OPTION>--------------------</OPTION>
<OPTION>--------------------</OPTION>
<OPTION>--------------------</OPTION>
<OPTION>--------------------</OPTION>
<OPTION>--------------------</OPTION>
</SELECT>
<SCRIPT LANGUAGE='JavaScript'>
ModifierListe(-1);
</SCRIPT>
<INPUT TYPE='submit' VALUE='Valider'>
</FORM>
fait preuve d'un peu d'initiative et de compréhension que diable
Marsh Posté le 02-05-2002 à 13:27:51
Bon je me permet de t'embeter encore un peu
car j'aime pas les truc que je ne c pas a quoi ca sert
Donc
document.frmDemo1.zlItem.options[i] = null; => le options ca sert a koi comme fonction? car il est partout.
document.frmDemo1.zlItem.length = 4; => pkoi tu change toujours la taille
onChange='ModifierListe(-1)'=> pkoi -1?
fait preuve d'un peu d'initiative et de compréhension que diable => et ca voulait dire koi ?
bn je vais tester mais ca devrait aller je pense
Merci
[jfdsdjhfuetppo]--Message édité par phive le 02-05-2002 à 13:43:58--[/jfdsdjhfuetppo]
Marsh Posté le 02-05-2002 à 13:46:31
Donc voila j'ai adapter ton script a ce ke je voulais faire mais cela ne marche pas
pourrais tu me dire pkoi?
<SCRIPT LANGUAGE='JavaScript'>
function ModifierListe(code_item)
{
lg = document.choix.choixB.length;
// On vide la liste
for (i = lg - 1; i >= 0; i--)
{
document.choix.choixB.options[i] = null;
}
code_rub = document.choix.choixA.selectedIndex;
if (document.choix.choixA.options[code_rub].value == 1)
{
document.choix.choixB.length = 4;
document.choix.choixB.options[0].value = 2;
document.choix.choixB.options[0].text = 'Rapport de réunion';
if (code_item == 2) document.choix.choixB.options[0].selected = true;
document.choix.choixB.options[1].value = 4;
document.choix.choixB.options[1].text = 'Rapport de conseil';
if (code_item == 4) document.choix.choixB.options[1].selected = true;
document.choix.choixB.options[2].value = 3;
document.choix.choixB.options[2].text = 'Rapport de la commission';
if (code_item == 3) document.choix.choixB.options[2].selected = true;
document.choix.choixB.options[3].value = 1;
document.choix.choixB.options[3].text = 'Divers';
if (code_item == 1) document.choix.choixB.options[3].selected = true;
}
if (document.choix.choixA.options[code_rub].value == 2) {
document.choix.choixB.length = 5;
document.choix.choixB.options[0].value = 8;
document.choix.choixB.options[0].text = 'Communes';
if (code_item == 8) document.choix.choixB.options[0].selected = true;
document.choix.choixB.options[1].value = 5;
document.choix.choixB.options[1].text = 'Entreprise';
if (code_item == 5) document.choix.choixB.options[1].selected = true;
document.choix.choixB.options[2].value = 7;
document.choix.choixB.options[2].text = 'Budget';
if (code_item == 7) document.choix.choixB.options[2].selected = true;
document.choix.choixB.options[3].value = 9;
document.choix.choixB.options[3].text = 'Environnement';
if (code_item == 9) document.choix.choixB.options[3].selected = true;
document.choix.choixB.options[4].value = 6;
document.choix.choixB.options[4].text = 'General';
if (code_item == 6) document.choix.choixB.options[4].selected = true;
}
}
</SCRIPT>
<b><center><font color='#FF0000'>Vous n'avez pas les autorisations necessaire pour afficher cette page.<br>
Veuillez revenir à l'accueil !</font>
</center></b>
";
}
else{
echo"<center><h1>Documents du District</h1><br>
<table border='0' bgcolor='#CCCCCC' cellpadding='0' cellspacing='0' background='../graph/trame.gif' class='duf' width='80%'>
<form nethod='post' name='choix'>
<tr>
<td>
Rechercher par
</td>
<td colspan=2><select name='choixA' onChange='ModifierListe(-1)'>
<option value='1'>type</option>
<option value='2'>theme</option>
</select>de documents
</td>
</tr>
<tr>
<td colspan=2 bgcolor='#CCCCCC'> </td>
</tr>
<tr>
<td>
Dans quel domaine
</td>
<td><select name='choixB'>
<option>Votre choix</option>
</select>
</td>
<td>
</td>
</tr>
<SCRIPT LANGUAGE='JavaScript'>
ModifierListe(-1);
</SCRIPT>
Marsh Posté le 02-05-2002 à 14:14:44
qu'est-ce qui ne fonctionne pas ?
j'ai fait un copier coller et la liste est bien rafraichie...
Marsh Posté le 02-05-2002 à 14:18:41
ethernal a écrit a écrit : qu'est-ce qui ne fonctionne pas ? j'ai fait un copier coller et la liste est bien rafraichie... |
tu as fais un copier coller du mien ou de ton script?
Marsh Posté le 02-05-2002 à 14:20:19
de ton script.
il manque le </table>, mais je suppose que c'est une erreur de copier-coller.
sinon ça fct parfaitement (l'envoi je n'ai pas testé...)
Marsh Posté le 02-05-2002 à 14:29:28
oui le </form> et le </table> sont un oublie de copier coller.
Par contre ca me fais que ca marche chez toi....
Moi y me dis "erreur sur la page" et donc le JS ne marche...
Grrr faut voir ke je tente mon script tt seul car en fait il est en plein milieu de page je v voir
Marsh Posté le 02-05-2002 à 14:33:37
ha oui ca marche tt seul !!! sans les truc au tour
dapres toi ca peut venir d'ou?
Marsh Posté le 02-05-2002 à 14:37:10
MOUARf faut ke je me tire une balle c incroyable ca.
Je l'avais mis dans un if dans le kelle on ne pouvait pas aller car la conditon n'etais pas respecter !!!
je suis trop un naze LOL
Menfin merci bcp a toi ethernal
Marsh Posté le 02-05-2002 à 09:23:59
J'au une question mais je ne sais pas si cela se fais en JS ou si ca peut se faire en php aussi.
Donc voila
J'ai 2 menu deroulant (select).
Je voudrais que lorsque je fais un choix dans le menu deroulant 1, il affiche des champs differents dans le menu deroulant 2 en fonction du choix fais le menu deroulant 1. et tous cela bien sur avec un refresh auto (avec onChange non?)
[jfdsdjhfuetppo]--Message édité par phive le 02-05-2002 à 11:05:42--[/jfdsdjhfuetppo]
---------------
/!\ Post powered by Phive-online.com /!\