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

VB.NET Discussion :

control validator pour tester la longueur d'une chaine de caractère


Sujet :

VB.NET

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 97
    Points : 51
    Points
    51
    Par défaut control validator pour tester la longueur d'une chaine de caractère
    Bonsoir à tous,

    je cherche comment mettre en place un control validator afin de vérifier que la longueur de la chaine de caractère saisie par mon user ne dépasse pas la taille de mon champ dans la bdd.

    Existe-t'il un control tout fait tel le Requiredfieldvalidator ?

    J'ai bien en tête le CustomValidator validator mais je ne vois pas comment m'y prendre.

    En fait, j'ai un gridview en mode "edit" et je souhaiterai qu'au moment de cliquer sur le bouton "update", que le contrôle soit fait, et en cas d'erreur pouvoir afficher une alerte dans mon control "validationsummary" et annuler l'update.
    Mais je bute sur quelque chose, je dois avoir un pb de logique sur ce coup

    Si quelqu'un a une idée, je suis preneur

    Cordialement,
    Tommy

  2. #2
    Membre chevronné Avatar de Danyel
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2005
    Messages
    1 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 682
    Points : 1 952
    Points
    1 952
    Que les neurones soient avec toi, jeune padawan.
    Ne pas oublier, qu'un métier, développer être.
    Effectuer des recherches et lire les tutos, avant de poster, tu dois.
    Aucune question technique, faites par MP, tu ne dois.

  3. #3
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Points : 3 102
    Points
    3 102
    Par défaut
    Où tu checkes la longueur de ta chaine de caractères côté code behind comme le suggères Danyel.
    Ou tu peux utiliser un RegularExpressionValidator :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <asp:RegularExpressionValidator ID="REV1" runat="server" ControlToValidate="TonControle"
    ErrorMessage="Message d'erreur" ValidationExpression="^({0,X})$ "
    ValidationGroup="TonGroupe"></asp:RegularExpressionValidator>
    Ou "X" est ton nombre de caractères maximum.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 97
    Points : 51
    Points
    51
    Par défaut
    Oui je sais qu'il est possible de la faire dans le code behind, mais je cherchais justement ce fameux "RegularExpressionValidator".

    Je l'avais bien vu dans la liste des validator, mais j'avais visiblement pas compris son fonctionnement.
    Je vais essayer cela de suite!

    Merci beaucoup!

  5. #5
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Points : 3 102
    Points
    3 102
    Par défaut
    Content de t'avoir aidé

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 97
    Points : 51
    Points
    51
    Par défaut
    Bonjour calagan99,

    J'ai suivi tes conseils, mais j'obtiens ce message d'erreur dès que je charge la page contenant le control de validation

    Je n'arrive pas à trouver d'ou peut venir le problème.

    parsing "^({0,25})$ " - Quantifier {x,y} following nothing.

    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
                                <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" 
                                    ControlToValidate="Insertion_Nom" 
                                    ErrorMessage="Le texte saisi est trop long ! 25 caractères maximum." 
                                    ValidationExpression="^({0,25})$ " ValidationGroup="nvx_prod" Text="25 caractères maxi."></asp:RegularExpressionValidator>
    As-tu une idée de ce que je fais de faux?

    D'avance merci,
    Tommy

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    667
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 667
    Points : 1 166
    Points
    1 166
    Par défaut
    Bonjour,
    je ne connais pas asp, mais je suppose que les expressions rationnelles sont universelles à tous les langages et le message dit en gros :
    "tu en veux de 0 à 25, oui, mais de quoi".
    Le quantificateur est là mais la classe de caractères non.
    Ex.: je veux de 0 à 25 chiffres, l'expression est : "^\d{0,25}$"
    Enfin, sous toutes réserves, je pense que ça vient de là et pour les classes de caractères entre autres :
    http://msdn.microsoft.com/fr-fr/libr...=VS.80%29.aspx

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 97
    Points : 51
    Points
    51
    Par défaut
    Bonjour,

    effectivement, il me manquait ce paramètre. Je souhaite limite la chaine de caractères, chiffres, lettres, espace à 25 caractères maxi

    J'ai donc paramétré l'expression de la sorte : ^\w{0,25}$

    Et maintenant cela fonctionne ;-)

    Merci beaucoup pour votre aide
    Tommy

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

Discussions similaires

  1. vérification de la longueur d'une chaine de caractère
    Par midodido123 dans le forum Développement de jobs
    Réponses: 3
    Dernier message: 04/08/2009, 10h24
  2. Véritable longueur d'une chaine de caractères
    Par danyII dans le forum Langage
    Réponses: 5
    Dernier message: 18/03/2008, 09h36
  3. Réponses: 4
    Dernier message: 24/04/2007, 21h58
  4. [TRANSACT SQL] longueur d'une chaine de caractères
    Par Cyborg289 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 20/03/2007, 08h06
  5. Tester la longueur d'une chaine de caractères
    Par greg64 dans le forum IHM
    Réponses: 9
    Dernier message: 12/06/2006, 15h54

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