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 :

Annuler l'exécution d'un évènement si la validation échoue


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé

    Inscrit en
    Novembre 2003
    Messages
    168
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 168
    Par défaut Annuler l'exécution d'un évènement si la validation échoue
    Bonjour,

    J'ai une form qui contient plusieurs champs qui possèdent chacun un ou plusieurs validateurs, la form contient aussi un bouton qui permet d'enregistrer les données saisies dans la BD.

    Je dois utiliser la validation côté serveur, et je veux que lorsque l'utilisateur clique sur le bouton d'enregistrement, s'il y a des erreurs de validation la méthode de l'évènement "clique sur le bouton" ne soit pas exécutée, la seule façon que j'ai trouvé de faire cela est d'ajouter dans la procédure d'évènement ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (this.IsValid) {
              //Code qui enregistre les données.
         }
    Cela marche bien, mais le problème c'est qu'il faut faire ça pour tous les boutons (lorsqu'il y a plusieurs), ma question est la suivante :

    y a t'il un moyen d'annuler l'exécution des évènements depuis la méthode load si la validation n'est pas correcte, exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    protected void Page_Load(object sender, EventArgs e)
      {
        if (IsPostBack && !IsValid)
        {
             //exécuter un code qui annuleras l'exécution des méthodes d'évènement
        }
    Quel est le code permettant de faire cela ?

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Pourquoi tu mets pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (this.IsValid) {
              //Code qui enregistre les données.
         }
    dans l'évènement OnClick du bouton concerné?

  3. #3
    Membre confirmé

    Inscrit en
    Novembre 2003
    Messages
    168
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 168
    Par défaut
    C'est ce que je fais pour l'instant, mais dans le cas ou il y aurait plusieurs boutons, je serais obligé de mettre ce code dans la méthode d'évènement de chaque bouton :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (this.IsValid) {
              //Code qui enregistre les données.
         }
    Moi justement je voudrais éviter ça en annulant l'évènement depuis le load, est ce possible ?

  4. #4
    Membre très actif
    Profil pro
    Inscrit en
    Août 2008
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 265
    Par défaut
    En terme de performance, suis pas sur que ce soit le top.

    Si tu arretes directement ton evenement dans la methode du bouton, tu ne vas rien lancer. Par contre si t'attend le PageLoad, tu vas lancer tout un tas de methode pour ... rien.

  5. #5
    Membre éprouvé
    Inscrit en
    Décembre 2003
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Décembre 2003
    Messages : 108
    Par défaut
    tu peux utiliser la proprieté ValidationGroup de tes validators et valider ou non un groupe de données

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/06/2015, 09h25
  2. forcer l'exécution d'un évènement _Paint
    Par jdddeschamps dans le forum Windows Forms
    Réponses: 6
    Dernier message: 20/06/2015, 09h21
  3. Réponses: 5
    Dernier message: 09/09/2013, 16h31
  4. [AC-2003] exécuter code sur évènement "touche entrée"
    Par willytito dans le forum VBA Access
    Réponses: 2
    Dernier message: 26/10/2011, 17h55
  5. [MySQL] Exécuter du PHP lors de la validation d'un formulaire
    Par UniX31 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 16/06/2007, 10h36

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