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 :

Fermeture de fenêtre modale


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2009
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 54
    Points : 38
    Points
    38
    Par défaut Fermeture de fenêtre modale
    Bonjour à tous.
    je suis en train de bosser sur un nouveau projet et je débute dans la programmation Web.
    Je bosse avec Visual Studio 2010.

    Voila je souhaite ouvrir une fenêtre modale. j'ai suivi une doc qui est à l'adresse suivante: http://jpconnexion.free.fr/showmodal...daldialog.html.

    J'ai compris le fonctionnement de cet exemple.

    Mon problème vient du fait que lorsque j'adapte ce code à mon programme je m'en sors pas.
    Je m'explique. Ma fenêtre (FrmNouveauEntete) s'ouvre comme il faut (enfin j'ai l'impression tout du moins).
    Lorsque je clique sur le bouton "Annuler" de ma fenêtre modale (FrmNouveauEntete), ma fenêtre ouvre une nouvelle fenêtre.
    Idem quand je clique sur le bouton "Enregistrer".

    Si quelqu'un pouvait m'aider ça serait sympa. ça me permettrai d'avancer.

    je vous mets le code de ma fenêtre principale (FrmFT), la fonction OpenWindow() est lancé depuis le bouton "Nouveau" (lignes 71-72)
    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
    78
    79
    80
     
    <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="CtlEnteteFT.ascx.cs"
        Inherits="WebGDT.Controls.CtlEnteteFT" %>
    <head>
        <script language="JavaScript">
            function openWindow() 
            {
                var myArguments = new Object(); //ici passage de paramètres sous la forme objet
                myArguments.param1 = "2013";
                var sFeatures = "dialogHeight:300px;dialogWidth:300px;unadorned:yes;status:no;center:yes;edge:sunken ;scroll:no";
                var retour = window.showModalDialog("/FrmNouveauEntete.aspx", myArguments, sFeatures);
        //        alert("valeur en retour de la fenêtre appelée: " + retour); //pour visualisation seulement 
            } 
        </script>
    </head>
    <body>
        <form id="formEntete">
        <asp:Panel ID="PanelArticle" runat="server" GroupingText="Article" Direction="LeftToRight"
            Width="25%">
            <div>
                <div>
                    <div style="float: left">
                        <asp:Label ID="lblArticle" runat="server" Text="Article"></asp:Label>
                    </div>
                    <div style="float: right">
                        <asp:TextBox ID="txtArticle" runat="server" MaxLength="4"></asp:TextBox>
                    </div>
                </div>
                <br />
                <asp:Button ID="btnRechercher" runat="server" Text="Rechercher" OnClick="btnRechercher_Click"
                    Style="height: 26px" />
            </div>
        </asp:Panel>
        <asp:Panel ID="PanelListeFT" runat="server" GroupingText="Entête FT" Direction="LeftToRight"
            Width="100%">
            <div>
                <div>
                    <asp:GridView ID="gv_entete" runat="server" AutoPostBack="true" DataSourceID="sdsListeEntete"
                        OnSelectedIndexChanged="gv_entete_SelectedIndexChanged" SelectedIndex="0" BackColor="White"
                        BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="3" AutoGenerateColumns="False">
                        <Columns>
                            <asp:CommandField ShowSelectButton="True" />
                            <asp:BoundField DataField="ID_ENTETE_FT" HeaderText="Entête" SortExpression="ID_ENTETE_FT" />
                            <asp:BoundField DataField="ID_ARTICLE_ENTETE_FT" HeaderText="ID_ARTICLE_ENTETE_FT"
                                SortExpression="ID_ARTICLE_ENTETE_FT" Visible="False" />
                            <asp:BoundField DataField="INDICE_ENTETE_FT" HeaderText="INDICE_ENTETE_FT" SortExpression="INDICE_ENTETE_FT"
                                Visible="False" />
                            <asp:BoundField DataField="EDITION_ENTETE_FT" HeaderText="EDITION_ENTETE_FT" SortExpression="EDITION_ENTETE_FT"
                                Visible="False" />
                            <asp:BoundField DataField="MINI_ENTETE_FT" HeaderText="Temps mini" SortExpression="MINI_ENTETE_FT" />
                            <asp:BoundField DataField="MAXI_ENTETE_FT" HeaderText="Temps maxi" SortExpression="MAXI_ENTETE_FT" />
                            <asp:BoundField DataField="DATE_REFERER" HeaderText="Date" SortExpression="DATE_REFERER" />
                            <asp:CommandField ShowEditButton="True" />
                            <asp:CommandField ShowDeleteButton="True" />
                        </Columns>
                        <FooterStyle BackColor="White" ForeColor="#000066" />
                        <HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
                        <PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
                        <RowStyle ForeColor="#000066" />
                        <SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
                        <SortedAscendingCellStyle BackColor="#F1F1F1" />
                        <SortedAscendingHeaderStyle BackColor="#007DBB" />
                        <SortedDescendingCellStyle BackColor="#CAC9C9" />
                        <SortedDescendingHeaderStyle BackColor="#00547E" />
                    </asp:GridView>
                    <asp:SqlDataSource ID="sdsListeEntete" runat="server" ConnectionString="<%$ ConnectionStrings:PCCConnectionStringBDD %>"
                        ProviderName="<%$ ConnectionStrings:PCCConnectionStringBDD.ProviderName %>" SelectCommand="SELECT ADMIN.ENTETE_FT.ID_ENTETE_FT, ADMIN.ENTETE_FT.ID_ARTICLE_ENTETE_FT, ADMIN.ENTETE_FT.INDICE_ENTETE_FT, ADMIN.ENTETE_FT.EDITION_ENTETE_FT, ADMIN.ENTETE_FT.MINI_ENTETE_FT, ADMIN.ENTETE_FT.MAXI_ENTETE_FT, ADMIN.REFERER.DATE_REFERER FROM ADMIN.ENTETE_FT, ADMIN.ARTICLE, ADMIN.REFERER WHERE (ARTICLE.ID_ARTICLE = :monArticle) AND (ENTETE_FT.ID_ENTETE_FT = REFERER.ID_ENTETE_FT_REFERER) AND (ARTICLE.ID_ARTICLE = REFERER.ID_ARTICLE_REFERER) ORDER BY ADMIN.REFERER.DATE_REFERER DESC"
                        UpdateCommand=""></asp:SqlDataSource>
                    <div>
                        <div style="float: left">
                            <button onClick="openWindow();">
                                Nouveau</button>
                        </div>
                    </div>
                </div>
            </div>
        </asp:Panel>
        </form>
    </body>
    </html>
    Lors de l'ouverture de ma fenetre modale, j'ai le code suivant:
    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
     
    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FrmNouveauEntete.aspx.cs"
        Inherits="WebGDT.FrmNouveauEntete" Title="PCC France - GDT" %>
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <script language="JavaScript">
            var reception = window.dialogArguments;
     
            function fermerFenetre() {
                window.returnValue = false;
                window.close();
            }
     
            function enregistrerNouveau()
            {
                var monEnteteRetour = new Object;
                monEnteteRetour.Id_Article = reception.param1;
                monEnteteRetour.Indice = window.document.forms['formModal'].elements['txtIndice'].value;
                monEnteteRetour.Edition = window.document.forms['formModal'].elements['txtEdition'].value;
                window.returnValue= monEnteteRetour;
                window.close();
            }
        </script>
    </head>
    <body>
        <form id="formModal" runat="server">
        <div style="float: left">
            <div style="clear: both; float: left">
                <asp:Label ID="lblArticle" runat="server" Text="Article"></asp:Label></div>
            <div style="float: right">
                <asp:Label ID="lblNumeroArticle" runat="server"></asp:Label></div>
        </div>
        <div style="clear: both; float: left">
            <div style="clear: both; float: left">
                <asp:Label ID="lblIndice" runat="server" Text="Indice"></asp:Label></div>
            <div style="float: right">
                <asp:TextBox ID="txtIndice" runat="server"></asp:TextBox></div>
        </div>
        <div style="clear: both; float: left">
            <div style="clear: both; float: left">
                <asp:Label ID="lblEdition" runat="server" Text="Edition"></asp:Label></div>
            <div style="float: right">
                <asp:TextBox ID="txtEdition" runat="server"></asp:TextBox></div>
        </div>
        <div style="clear: both; float: left">
            <div>
                   <button onclick="fermerFenetre();">
                    Annuler</button>
                    <button onclick="enregistrerNouveau();">
                    Enregistrer</button>
            </div>
        </div>
        </form>
    </body>
    </html>
    Lorsque je clique sur Enregistrer ou Annuler, une nouvelle fenêtre s'ouvre, je ne comprends pas pourquoi.
    De plus je souhaiterai que lorsque je clique sur Enregistrer, après la fermeture de ma fenetre (FrmNouveauEntete), ma page principale (FrmFT) s'actualise afin d'ajouter les données saisies dans la fenêtre modale.
    Je souhaiterai également que dans mon label "lblNumeroArticle" (ligne 33) je puisse récupérer la valeur du paramètre passé en paramètre.

    Merci d'avance pour votre aide.
    Sophie

  2. #2
    Nouveau membre du Club
    Inscrit en
    Octobre 2009
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 54
    Points : 38
    Points
    38
    Par défaut
    Bon j'ai pas du bien cherché vu que je viens de trouver

    En fait si ça intéresse quelqu'un, les boutons dans ma fenêtre modale il faut les mettre comme suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     <form method="post">
                <input type="button" value="Enregistrer" onclick="enregistrerNouveau()" />
                <input type="button" value="Annuler" onclick="fermerFenetre()">
                </form>
    ainsi la fenetre ne s'ouvre pas une seconde fois.
    Désolée pour le dérangement

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

Discussions similaires

  1. Fermeture de fenêtre modale
    Par Teddy dans le forum Débuter
    Réponses: 7
    Dernier message: 18/06/2012, 11h48
  2. Fermeture fenêtre modale
    Par masseur dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 14/04/2008, 17h30
  3. Fermeture d'une fenêtre modale
    Par od.dev dans le forum Composants VCL
    Réponses: 8
    Dernier message: 04/10/2007, 09h07
  4. Réponses: 5
    Dernier message: 15/01/2007, 10h45
  5. ouverture/fermeture d'une fenêtre modale showModelessDialog
    Par marti dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 04/01/2006, 05h03

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