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

ASP.NET Discussion :

ouvrir une fenetre/popup alert asp(c#)


Sujet :

ASP.NET

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 40
    Points : 20
    Points
    20
    Par défaut ouvrir une fenetre/popup alert asp(c#)
    Bonjour,

    voila dans mon fichier asp, j'ai mis des checkbox et un bouton et autres composants dans un updatepanel.
    Je veux, dans mon code en c#, creer une fonction qui m'ouvre une fenetre alert ou une popup si aucun checkbox n'est coché.

    Je sais comment vérifier que les checkbox ne sont pas coché, mais le pb vient de l'ouverture de la fenetre.

    j'ai marqué dans mon code behind :

    protected void btnEffacer_Click(object sender, EventArgs e)
    {

    if (cbxRtt.Checked == false && cbxRecup.Checked == false && cbxPaye.Checked == false && cbxConv.Checked == false && cbxSupp.Checked == false &&
    cbxComp.Checked == false && cbxFeries.Checked == false && cbxFEtranger.Checked == false && cbxParental.Checked == false && cbxSansSolde.Checked == false &&
    cbxNTravail.Checked == false)
    {
    string message = "rien";
    Response.Write("<script>alert(\"" + message + "\");</script>");
    }


    Mais quand je clique voici l'erreur :
    Sys.WebForms.PageRequestManagerParseErrorException: The message received from the server could not be parsed. Common causes for this error are when the response is modified by calls to Response.Write(), responses filters, HttpModules, or server trace is enabled.
    Details: Error parsing near ' <script la'.......

    On m'a dit que le pb vient de l'updatepanel, mais je sais pas comment faire autrement,

    Merci de m'aider

  2. #2
    Membre averti
    Profil pro
    azeazeae
    Inscrit en
    Septembre 2002
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : azeazeae

    Informations forums :
    Inscription : Septembre 2002
    Messages : 114
    Points : 305
    Points
    305
    Par défaut
    Tu peux utiliser ScriptManager.RegisterStartupScript non?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ScriptManager.RegisterStartupScript(this, typeof(Page), "Message", "alert('TON MESSAGE');", true);

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Points : 1 619
    Points
    1 619
    Par défaut
    tout est dans le messsage d'erreur. tu ne peux pas faire de request.write.
    tu as dans les propriétés de ton bouton un evenement qui s'appelle onclientclick. tu mets ton alert dedans et ca devrait le faire.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 40
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par rattlehead Voir le message
    tout est dans le messsage d'erreur. tu ne peux pas faire de request.write.
    tu as dans les propriétés de ton bouton un evenement qui s'appelle onclientclick. tu mets ton alert dedans et ca devrait le faire.
    Non je peux pas le mettre dedans, car je ne pourrai pas faire de condition, la fenetre s'ouvrira automatiquement lors de mon clic.

    Or, je rappelle que je dois d'abord verifier si au moins un checkbox est coché (avec des if).
    Sinon, pas besoin de fenetre qui s'ouvre si au moins un checkbox est coché.

    Merci

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Points : 1 619
    Points
    1 619
    Par défaut
    tu fais un addAttibutes sur ton bouton dans lequel tu mets ta fonction javascript. sinon tu peux faire comme on te l'a conseillé utiliser
    ScriptManager.RegisterStartupScript.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 40
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par ixpe Voir le message
    Tu peux utiliser ScriptManager.RegisterStartupScript non?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ScriptManager.RegisterStartupScript(this, typeof(Page), "Message", "alert('TON MESSAGE');", true);
    Merci pour ton aide, mais je ne comprend pas bien les parametres, de plus il me semble qu'il manque le parametre "key" (à quoi ça sert ???)

  7. #7
    Membre averti
    Profil pro
    azeazeae
    Inscrit en
    Septembre 2002
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : azeazeae

    Informations forums :
    Inscription : Septembre 2002
    Messages : 114
    Points : 305
    Points
    305
    Par défaut
    Tu peux trouver une explication sur
    http://msdn.microsoft.com/fr-fr/library/bb310408.aspx

    Je n ai pas oublie le parametre key, je l ai initialise a "Message" (une valeur
    bidon) Cela identifie ton bloc de script.
    Si tu appelles ce code depuis une page aspx ca devrait fonctionner.

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 40
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par ixpe Voir le message
    Tu peux trouver une explication sur
    http://msdn.microsoft.com/fr-fr/library/bb310408.aspx

    Je n ai pas oublie le parametre key, je l ai initialise a "Message" (une valeur
    bidon) Cela identifie ton bloc de script.
    Si tu appelles ce code depuis une page aspx ca devrait fonctionner.
    Merci beaucoup de ton aide, mais pourrais-tu m'expliquer : typeof(Page)
    J'ai regardé ce que ça voulais dire, et j'ai pas tres bien compris.

    De plus, j'ai ajouté la ligne que tu m'as donné, et .... rien.
    Aucune fenetre ne s'ouvre

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 19
    Points : 23
    Points
    23
    Par défaut
    simple sugestion, pourquoi ne pas regarder du coté des controls de l'AjaxToolKit qui permetent de faire des trucs très jolis sans trop se prendre la tête ?

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 40
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par ppmax Voir le message
    simple sugestion, pourquoi ne pas regarder du coté des controls de l'AjaxToolKit qui permetent de faire des trucs très jolis sans trop se prendre la tête ?
    je te remercie de ton aide, mais j'ai déjà survolé AjaxToolKit ; et j'ai pas trouvé de chose adéquate à mon pb, sauf si tu vois qqchose d'interessant.

    Merci

  11. #11
    Membre averti
    Profil pro
    azeazeae
    Inscrit en
    Septembre 2002
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : azeazeae

    Informations forums :
    Inscription : Septembre 2002
    Messages : 114
    Points : 305
    Points
    305
    Par défaut
    Avec btnEffacer dans un updatepanel, si tu utilises ce code dans l etat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    protected void btnEffacer_Click(object sender, EventArgs e)
    { 
    ScriptManager.RegisterStartupScript(this, typeof(Page), "Message", "alert('TON MESSAGE');", true);
     }
    Ca fonctionne?
    (chez moi oui...)

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 40
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par ixpe Voir le message
    Avec btnEffacer dans un updatepanel, si tu utilises ce code dans l etat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    protected void btnEffacer_Click(object sender, EventArgs e)
    { 
    ScriptManager.RegisterStartupScript(this, typeof(Page), "Message", "alert('TON MESSAGE');", true);
     }
    Ca fonctionne?
    (chez moi oui...)
    Non ça veut pas marcher chez moi
    Merci quand même l'ami

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 19
    Points : 23
    Points
    23
    Par défaut
    Citation Envoyé par bilouz93 Voir le message
    je te remercie de ton aide, mais j'ai déjà survolé AjaxToolKit ; et j'ai pas trouvé de chose adéquate à mon pb, sauf si tu vois qqchose d'interessant.

    Merci
    Regarde du coté de la modal popup de l'ajaxtoolkit, ca peut faire des trucs sympatiques

  14. #14
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 40
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par ppmax Voir le message
    Regarde du coté de la modal popup de l'ajaxtoolkit, ca peut faire des trucs sympatiques
    je crois qu'avec modal popup, lorsque je clic sur le bouton, la popup va directement se lancer, alor que je veux qu'elle se lance SI ma condition est verifié, sinon pas la peine d'etre affiché

  15. #15
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 19
    Points : 23
    Points
    23
    Par défaut
    Citation Envoyé par bilouz93 Voir le message
    je crois qu'avec modal popup, lorsque je clic sur le bouton, la popup va directement se lancer, alor que je veux qu'elle se lance SI ma condition est verifié, sinon pas la peine d'etre affiché
    il y a une solution pour faire ce que tu veux, tu as la méthode Show() qui peut servir, tu la lance coté serveur.
    Du genre pour moi ca fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ModalPopupExtender.Show();
    Et tu ne lies pas ta popupextender avec ton bouton de validation.

  16. #16
    Membre habitué Avatar de Ishizaki
    Inscrit en
    Avril 2006
    Messages
    262
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 262
    Points : 175
    Points
    175
    Par défaut
    Tu peux pas faire, si ta condition est ok:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Monbouton.Attributes.add("onclick","javascript:alert('hey !!');");
    Juste pour le test. Après, tu remplaces le texte du alert par ce que tu veux.

  17. #17
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 40
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par ppmax Voir le message
    il y a une solution pour faire ce que tu veux, tu as la méthode Show() qui peut servir, tu la lance coté serveur.
    Du genre pour moi ca fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ModalPopupExtender.Show();
    Et tu ne lies pas ta popupextender avec ton bouton de validation.
    Je vois pas trop comment tu veux faire ;
    Peux-tu me détailler STP

  18. #18
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 19
    Points : 23
    Points
    23
    Par défaut
    Citation Envoyé par bilouz93 Voir le message
    Je vois pas trop comment tu veux faire ;
    Peux-tu me détailler STP
    Lorsque tu ajoutes un modalExtender à ta page ASPX, tu dois lui fournir un targetcontrolId, ce control, c'est le plus souvent un bouton, sauf que toi, tu ne veux pas que la popup soit appelée lors du clic sur ton bouton Valider, il faut donc créer un bouton que tu cacheras (visible à false ) qui servira simplement à donner un targetcontrolId au modalextender :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <ajaxToolkit:ModalPopupExtender ID="ModalPopupExtender" runat="server" TargetControlID="btn_ok_cache" .../>
    mon bouton caché :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <asp:Button ID="btn_ok_cache" runat="server" Text=" " BackColor="White" BorderColor="White"
            BorderWidth="0px" Enabled="False" ForeColor="White" />
    Maintenant, il reste plus qu'à appeler ta popupcoté server, tu n'as simplement qu'à faire ModalPopupExtender.Show() pour l'afficher et le tour est joué.

    Va voir là, tout est expliqué comme il faut :
    http://www.asp.net/AJAX/AjaxControlT...odalPopup.aspx

  19. #19
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 40
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par ppmax Voir le message
    Lorsque tu ajoutes un modalExtender à ta page ASPX, tu dois lui fournir un targetcontrolId, ce control, c'est le plus souvent un bouton, sauf que toi, tu ne veux pas que la popup soit appelée lors du clic sur ton bouton Valider, il faut donc créer un bouton que tu cacheras (visible à false ) qui servira simplement à donner un targetcontrolId au modalextender :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <ajaxToolkit:ModalPopupExtender ID="ModalPopupExtender" runat="server" TargetControlID="btn_ok_cache" .../>
    mon bouton caché :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <asp:Button ID="btn_ok_cache" runat="server" Text=" " BackColor="White" BorderColor="White"
            BorderWidth="0px" Enabled="False" ForeColor="White" />
    Maintenant, il reste plus qu'à appeler ta popupcoté server, tu n'as simplement qu'à faire ModalPopupExtender.Show() pour l'afficher et le tour est joué.

    Va voir là, tout est expliqué comme il faut :
    http://www.asp.net/AJAX/AjaxControlT...odalPopup.aspx

    Merci de nouveau, mais je ne vois pas quoi mettre pour le PopupControlID (je suis obligé d'en mettre un, sinon erreur)

  20. #20
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 19
    Points : 23
    Points
    23
    Par défaut
    le PopupControlID, c'est un panel qui servira de popup, dedans tu places ce que tu veux, ca sera ça qui sera affiché. Dans l'exemple donné sur le site de l'ajaxtoolkit, le panel du popupcontrolID c'est le panel1.
    Regarde aussi le Css exemple

Discussions similaires

  1. Réponses: 9
    Dernier message: 04/01/2008, 15h49
  2. ouvrir une fenetre popup
    Par mcdelay dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 03/05/2007, 15h22
  3. [New User] Ouvrir une fenetre en popup
    Par toure32 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 02/12/2005, 19h36
  4. Ouvrir une fenetre bloquante
    Par Cooly dans le forum C++Builder
    Réponses: 9
    Dernier message: 10/01/2005, 18h50
  5. [C#] ouvrir une fenetre "bloquante"
    Par Johan31 dans le forum ASP.NET
    Réponses: 6
    Dernier message: 26/02/2004, 11h48

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