Bonjour!
Encore novice en php et java script, j'ai quelques problème avec des liste déroulante liées.
Je m'explique J'ai 2 liste déroulantes.
La premiere afficher la liste des services
pas de probléme sur celle-ci
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <td nowrap class="Libelle" align="left"><?php $mess->printString("poste.service") ?> : </td> <td> <select name="service" size="1" class="Controle_Plat_Obligatoire_EA" OnChange="change_service()"> <option value="0">Sélectionnez le service ... <?php for ($i = 0 ; $i < sizeof($service_datas) ; $i++) {?> <option value="<?php echo $service_datas[$i][BU_CODE]?>"><?php echo $service_datas[$i][BU_LIB]?> <?php } ?> </select> </td>
La seconde affiche normalement les sous services Niveau
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <td nowrap class="Libelle" align="left"><?php $mess->printString("user.poste"); ?> : </td> <td> <select name="service_niveau1" size="1" class="Controle_Plat_Obligatoire_EA"> <?php if ($hierarchie_1_datas[0][hierachie_CODE] == 0 ) { ?><option value="0" <?php if ($_POST[bu]) echo "selected"?>>Sélectionnez la fonction ...<?php } ?> <?php if ($hierarchie_1_datas[0][hierachie_CODE] <> 0 ) { ?><option value="0" >Service Niveau 1 ...<?php } ?> <?php for ($i = 0 ; $i < sizeof($hierarchie_1_datas) ; $i++) {?> <option value="<?php echo $hierarchie_1_datas[$i][hierarchie_CODE]?>"<?php if ($datas[0][hierarchie] == $hierarchie_1_datas[$i][hierarchie_CODE]) echo "selected"?>><?php echo $hierarchie_1_datas[$i][hierarchie_LIBELLE]?> <?php } ?> </select> </td>
En gros problème, je voudrai arriver à mettre à jour la liste déroulante sous service (sans changer de page qu'elle se réactuliser automatiquement) en utilisant l'option onChange(), mais ça a pas l'air de vouloir :'(
fonction actuel dans le onChange()
Code :
Pour le moment cette fonction fonctionne jusqu'a "document.Frm_MAJPoste.service_niveau1.options[0].text = "Sélectionnez le service niveau 1 ...""
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 <script> function change_service() { var code_act = document.Frm_MAJPoste.service.value; // Liste des hôtels var indice = 1; document.Frm_MAJPoste.service_niveau1.options[0].value ="0"; document.Frm_MAJPoste.service_niveau1.options[0].text = "Sélectionnez le service niveau 1 ..." <?php for ($i=0; $i< sizeof($hierarchie_1_datas); $i++) { ?> var code_act_fil = "<?php echo $hierarchie_1_datas[$i][HIERARCHIE_SERVICE] ?>"; if (code_act == "" || code_act_fil == code_act) { document.Frm_MAJPoste.service_niveau1.length = indice + 1; document.Frm_MAJPoste.service_niveau1.options[indice].value="<?php echo $hierarchie_1_datas[$i][hierarchie_CODE] ?>"; document.Frm_MAJPoste.service_niveau1.options[indice].text="<?php echo $hierarchie_1_datas[$i][hierarchie_LIBELLE] ?>"; indice = indice + 1; } <?php } ?> document.Frm_MAJPoste.service_niveau1.length = indice; } </script>
Fonction pour recupére dans la table THierarchie les sous services.
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Function Datas_hierarchie_1($COOKIE) { $datas = Array(); $bd = new BaseMysql; $requete="SELECT thierarchie_departement.* FROM thierarchie_departement"; $requete.= " WHERE hierarchie_SITE = ".$COOKIE[cookie_user_site]; $requete.= " AND hierarchie_NIVEAU = 1"; $requete.=" ORDER BY hierarchie_LIBELLE"; // echo "<BR>$requete<BR>"; return($bd->get_all_values($requete)); }
Est ce que quelqu'un pourrais me donner un petit coup de pouce svp :-)
Merci
Partager