Bonjour
J'ai une fonction php manage0bj avec une liste déroulante de ce type:
Que j'ai modifié comme ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $t[] = mosHTML::makeOption('0',_EAB_OBJ_TYPE1); $t[] = mosHTML::makeOption('1',_EAB_OBJ_TYPE2); $t[] = mosHTML::makeOption('2',_EAB_OBJ_TYPE3); $t[] = mosHTML::makeOption('3',_EAB_OBJ_TYPE4); $t[] = mosHTML::makeOption('4',_EAB_OBJ_TYPE5); $lists['type'] = mosHTML::selectList($t,'type','id="type" class="inputbox" size="1" onChange="javascript:changeGUI(document.getElementById(\'type\').selectedIndex);" ', 'value', 'text', $obj->type );
le script commence ainsi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 $t[] = mosHTML::makeOption(_EAB_OBJ_TYPE1); $t[] = mosHTML::makeOption(_EAB_OBJ_TYPE2); $t[] = mosHTML::makeOption(_EAB_OBJ_TYPE3); $t[] = mosHTML::makeOption(_EAB_OBJ_TYPE4); $t[] = mosHTML::makeOption(_EAB_OBJ_TYPE5); $lists['type'] = mosHTML::selectList($t,'type','id="type" class="inputbox" size="1" onChange="javascript:changeGUI(document.getElementById(\'type\').selectedIndex);" ', 'value', 'text', $obj->type );
Je dois faire apparaitre différents champs suivant le type en faisant appel à une id de cette façon:
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
20 <script language="javascript" type="text/javascript"> <!-- function submitbutton(pressbutton) { if( pressbutton == 'media' ) { popupWindow('<?php echo $mosConfig_live_site; ?>/admin.gallery.php?action=init&objid=<?php echo $obj->id;?>&css=<?php echo $params['cur_templ']; ?>','titre',750,580,'no'); } if ( pressbutton == 'cancel' ) { submitform( pressbutton ); return; } if( pressbutton == 'save' || pressbutton == 'apply') { var form = document.adminForm; if (form.cat.value == 0){ alert( "<?php echo _EAB_OBJ_ERROR31; ?>" ); } else if (form.type.value == 0 ) { alert ("<?php echo _EAB_OBJ_TYPE_ERROR; ?>"); }
mon problème ce situe à ce niveau:
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 function changeGUI(tp) { /*** Single-Type ***/ t1a = document.getElementById('type1a'); t1b = document.getElementById('type1b'); /** current type **/ ctp = document.getElementById('type').selectedIndex; warning = document.getElementById('warn'); if(tp == null && ctp == 0 ){ warning.style.display = "block"; } else{ warning.style.display = "none"; }
Je ne sais pas par quoi remplacer (tp==1) ce qui pour moi correspond à ($t[] = mosHTML::makeOption(EAB_OBJ_TYPE2);pour appeler l'id correspondant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 if(tp == 1) { /*** Single-Type For Rent ***/ t1a.style.display = "block"; t1b.style.display = "block"; t2b.style.display = "none"; t2c.style.display = "none"; t2d.style.display = "none"; t3a.style.display = "block"; t4a.style.display = "none"; t4b.style.display = "block";
exemple code html:
Merci pour votre aide, en espérant avoir été assez clair
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <div id="type1a" class="tr1"> div class="td1"><b><?php echo _EAB_OBJ_ENRRMS; ?></b></div> <div class="td2"><input type="text" name="rooms" size="5" class="inputbox" maxlength="5" value="<?php echo $obj->rooms; ?>" /></div> <div class="td1"><b><?php echo _EAB_OBJ_EDWGN; ?></b></div> <div class="td2"><input type="text" name="space" size="7" class="inputbox" maxlength="10" value="<?php echo $obj->space; ?>" /> <?php echo $params['measure'];?></div> </div>
Partager