IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Affichage de formulaire


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 307
    Par défaut Affichage de formulaire
    Bonjour à tous,

    J'ai un petit soucis d'ordre JavaScript (du moins je pense) qui demeure un mystère total...
    Donc, j'ai une fonction JavaScript qui permet d'afficher un formulaire sous fond grisé en premier plan que voici :

    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
    // Open the lightbox
    function openbox(formtitle, idBox, shadowing, boxtitle, fadin)
    {
     
    	var box = document.getElementById(idBox); 
    	document.getElementById(shadowing).style.display='block';
     
    	var btitle = document.getElementById(boxtitle);
    	btitle.innerHTML = formtitle;
     
    	if(fadin)
    	{
    		gradient(idBox, 0);
    		fadein(idBox);
    	}
    	else
    	{ 	
    		box.style.display='block';
    	}  	
    }
    Et le mystère c'est que l'affichage fonctionne correctement qu'avec les id shadowing, boxtitle et box. Lorsque j'essaye de changer les ids comme dans ces 2 cas, impossible d'obtenir un affichage correct (en fait elles sont par défaut sur la page et mal présentées).
    Voici les différentes utilisations :

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    //Exemple qui fonctionne
    <div id="shadowing"></div>
    	<div id="box">
    		<span id="boxtitle"></span>
    		<p align="center"> Affichage :
    			<select name="select_ihm" STYLE="width:200" id="select_ihm">
    				<option value="semaphore_grp.php" select>Groupes</option>
    				<option value="semaphore.php">Automates</option>
    			</select>
    		</p>
    		<p align="center"> 
    			<button class="valider" type="submit" value="1" onclick="document.location.href=document.getElementById('select_ihm').value"><img src="ressources/button_valid.png" border='0'></button>
    		</p>
    	</div>
     
    //Exemples ne fonctionnant pas
    <div id="shadowingFiltre"></div>
    	<div id="boxFiltre">
    		<span id="boxtitleFiltre"></span>
    			<form name="createFiltre" method="Post" action="" onsubmit="return validation();">
    			Nom du filtre :<input type="text" name="nom_filtre" id="nom_filtre" value="" style="font-size:10px;width:157px;"/></br>
    			Par d&eacute;faut :<input type="checkbox" name="defaut" id="defaut" value="Y"/></br></br>
    		<table>
    			<tr>
    				<td>
    					<input type="hidden" name="acces" id="acces" value="<?php echo $_REQUEST['acces']; ?>">
    					<select name="liste_gauche" id="id_gauche" multiple size="10" ondblclick="javascript:move_right()" onload="javascript:init()" style="width:250px">
                        </select><br />                                        
                    </td>
                    <td><a href="javascript:move_right()"><img src="./ressources/control_right.png" border="0" onMouseOver="this.src='./ressources/control_right_over.png'" onMouseOut="this.src='./ressources/control_right.png'" alt=">>" title="Ajouter la sélection"></a>
    					<br />
                        <a href="javascript:move_left()"><img src="./ressources/control_left.png" border="0" onMouseOver="this.src='./ressources/control_left_over.png'" onMouseOut="this.src='./ressources/control_left.png'" alt="<<" title="Retirer la sélection"></a>
                    </td>
                    <td>
    					<select name="liste_droite" id="id_droite" multiple size="10" ondblclick="javascript:move_left()"  style="width:250px"></select>              
    				</td>
               </tr>
    		</table>
    		<p align="center"> 
    			<input type="hidden" name="liste_grp" id="liste_grp" value="">
    			<button class="valider" type="submit" name="valider" ><img src="ressources/button_valid.png" border='0'></button>
    			<button class="annuler" type="reset" value="0" onclick="closebox()"><img src="ressources/button_cancel.png" border='0'></button>		
    		</p>
    		</form>
    	</div>
     
    	<!-- fenêtre d'affichage de choix d'un filtre -->
    	<div id="shadowingChoix"></div>
    	<div id="boxChoix">
    		<span id="boxtitleChoix"></span>
    			<form name="choixFiltre" method="Post" action="" >
    		<table>
    			<tr>
    				<td>
    					<select name="liste_filtres" id="liste_filtres" style="width:250px";>
    					<?php
                                                    if(file_exists($_SESSION[SITE]["login"].'.xml'))
                                                    {
                                                            $filtres = simplexml_load_file($_SESSION[SITE]["login"].'.xml'); 
                                                            foreach($filtres->Filtre as $filtre) 
                                                            {
                                                                    echo" <option value='".$filtre->Groupes."'>".$filtre->Nom."</option>";
                                                            }
                                                    }
                                            ?>
    					</select>
    				</td>
               </tr>
    		</table>
    		<p align="center"> 
    			<input type="hidden" name="liste_grp" id="liste_grp" value="">
    			<button class="valider" type="submit" name="validerFiltre" ><img src="ressources/button_valid.png" border='0'></button>
    			<button class="annuler" type="reset" value="0" onclick="closebox()"><img src="ressources/button_cancel.png" border='0'></button>	
    			<button class="newfiltre" name="newfiltre" type="submit" onclick="openbox('Nouveau filtre', 'boxFiltre', 'shadowingFiltre', 'boxtitleFiltre', 0)"><img src="ressources/button_create.png" border='0'></button>
    		</p>
    		</form>
    	</div>
    Et je ne peux pas laisser 2 fois les paramètres qui fonctionnent car j'ai 2 formulaires qui peuvent être mis en avant sous fond grisé dans une seule et même page.
    Est-ce que quelqu'un a déjà recontré un problème de la sorte car là je sèche vraiment ?

    Merci d'avance

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    peut-être en déclarant explicitement les variables :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function openbox(formtitle, idBox, shadowing, boxtitle, fadin)
    {
    	var formtitle, idBox, shadowing, boxtitle, fadin;
    	// ....
    }

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 307
    Par défaut
    Merci pour ta suggestion mais hélas ça ne change rien

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    Nooooooooooon !
    surtout pas si tu redéclares les variables dans la fonction tu les effaces !

    Tu as un message d'erreur, un comportement à nous décrire ?

    au passage onload sur un select est vain !

    et un evènement javascript n'attentd par une recette de crèpes suzette. Donc
    ne sert à rien
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 307
    Par défaut
    Merci pour ta réponse alors pas de message d'erreur et le comportement c'est que les 2 formulaires se mettent en haut de la page.
    Sinon si j'enlève le onload au select ça ne fonctionne plus j'ai une page vide

    Edit : Je viens de trouver une erreur, c'était dans le css, j'utilisai les id et non les class ce qui fait que ça ne pouvait pas marcher, erreur d'inattention mais problème résolu maintenant

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ordre d'affichage des formulaires
    Par cdumas dans le forum Access
    Réponses: 3
    Dernier message: 04/05/2006, 12h15
  2. Réponses: 2
    Dernier message: 19/04/2006, 16h29
  3. Affichage dans formulaire
    Par Marmouz dans le forum Access
    Réponses: 2
    Dernier message: 13/04/2006, 20h33
  4. [vba-excel] Affichage de formulaire
    Par decour dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/12/2005, 11h04
  5. Réponses: 18
    Dernier message: 08/12/2004, 14h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo