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 :

Comparaison par code ascii


Sujet :

ASP.NET

  1. #1
    Membre du Club
    Inscrit en
    Février 2008
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 114
    Points : 65
    Points
    65
    Par défaut Comparaison par code ascii
    Bonjour,
    J'ai un texte box et j'aimerai vérifier que les caractères saisis sont bien des lettres majuscules, je fais cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
        {
            if( args.Value == "")
                args.IsValid = false;
            else if( char(args.Value) >= '65' && char(args.Value) <= '90' )
                args.IsValid = true;
     
        }
    mais cela ne fonctionne pas, y'a t'il un moyen de vérifier la plage des caractères ASCII pour les majuscules ou est ce qu'il y' a un moyen plus simple de faire cette vérification ?
    Merci d'avance.

  2. #2
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Code c# : 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
    public virtual bool IsMajuscules(string val, bool allowEmpty, bool allowSpace)
            {
                if (String.IsNullOrEmpty(val))
                {
                    return allowEmpty;
                }
                else
                {
                    foreach (char c in val)
                    {
                        if (allowSpace && c == ' ')
                            continue;
     
                        if (c < 'A' || c > 'Z')
                            return false;
                    }
     
                    return true;
                }
            }

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    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
     protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
        {
            if( args.Value == "")
                args.IsValid = false;
            else
            {
                args.IsValid = true;
                foreach(char c in args.Value)
                {
                    if (!Char.IsUpper(c))
                    {
                        args.IsValid = false;
                        break;
                    }
                }
        }
    Ou même (en C# 3) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
        {
            args.IsValid = !String.IsNullOrEmpty(args.Value)
                            && args.Value.All(c => Char.IsUpper(c));
        }

  4. #4
    Membre du Club
    Inscrit en
    Février 2008
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 114
    Points : 65
    Points
    65
    Par défaut
    Merci pour vos exemple, mais malheureusement auncun ne fonctionne, lorsque je clique pour valider , la validation se fait, même s'il n'y a rien dans le textebox ou s'il n'y a que des chiffres.
    un exemple d'utilisation des exemples précedent :

    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
     
    protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
        {
            if (args.Value == "")
                args.IsValid = false;
            else
            {
                args.IsValid = true;
                foreach (char c in args.Value)
                {
                    if (!char.IsUpper(c) && !char.IsLower(c))
                    {
                        args.IsValid = false;
                        break;
                    }
                }
            }
     
     
        }
    Y'a t'il quelque chose que j'ai omis ? ou devrais je ajouter un control sur le bouton de validation ? car il contient juste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     protected void Button1_Click(object sender, EventArgs e)
        {
            if (Page.IsValid)
            {
                Response.Redirect( mon url );
            }
        }
    Par ailleurs , dans les propriétés du customvalidator, control To validate est mis au textbox.
    manque t'il quelque chose ?
    Merci

  5. #5
    Membre du Club
    Inscrit en
    Février 2008
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 114
    Points : 65
    Points
    65
    Par défaut
    Finalement ça fonctionne, j'ai mis validateEmptyText à true.
    Merci

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

Discussions similaires

  1. Remplacer char dans string par code ASCII
    Par ThomasParis dans le forum Langage
    Réponses: 2
    Dernier message: 16/07/2010, 11h47
  2. Remplacer code ascii par caractère
    Par _MattU_ dans le forum VBA Access
    Réponses: 2
    Dernier message: 26/06/2008, 16h34
  3. Insérer caractère par son code ASCII
    Par Ange44 dans le forum Mise en forme
    Réponses: 2
    Dernier message: 10/04/2007, 12h04
  4. Code ASCII du symbole Euro
    Par FW-S dans le forum Delphi
    Réponses: 9
    Dernier message: 03/04/2007, 01h27
  5. [VB6] Datagrid afficher ou cacher des colonnes par code
    Par soazig dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 06/02/2003, 17h19

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