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 :

Limitation de saisie de caractères [RegExp]


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 44
    Points : 22
    Points
    22
    Par défaut Limitation de saisie de caractères
    Bonjour,

    J'ai besoin d'un coup de pouce. Je dois autoriser certains caractères qui sont les suivants
    abcdefghijklmnopqrstuvwxyzàâäãçéèêîïìñôöòùûüÿ-[><€()=,« ... »]
    et refuser tous les autres.
    Je cherche donc à mettre en place une fonction javascript, j'ai fais ceci je ne sais pas si c'est bon et il me manque les caractères [] et € à autoriser. comment placer tout cela?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    if ( document.forms[0].lib.value != '' && ! verifString(document.forms[0].lib.value, "^[A-Za-z0-9\ ':./()<>,\"=àäâéèëêïîôûüç-]*$" )){
    alert("Les caractères autorisés :\n    abcdefghijklmnopqrstuvwxyzàâäãçéèêîïìñôöòùûüÿ-[><\u20AC()=,« ... »]");
    return false;
    }

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 638
    Points : 66 668
    Points
    66 668
    Billets dans le blog
    1
    Par défaut
    elle est magique ta fonction verifString ??
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 44
    Points : 22
    Points
    22
    Par défaut


    Elle a cette tête là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    function verifString( valeur, strregex ) {
    	regex = new RegExp(strregex,"g");
    	return regex.test(valeur);
    }

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 638
    Points : 66 668
    Points
    66 668
    Billets dans le blog
    1
    Par défaut
    oui je m'en doutais bien ...
    C'était juste pour la précision:

    deux remarques:
    * pourquoi passer la reg en string et pas directement en regexp ?
    * les caractères [] doivent être echappés .. enfin du moins pour le fermant...

    ce qui devrait donner ceci pour l'appel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ( document.forms[0].lib.value != '' && ! verifString(document.forms[0].lib.value, /^[A-Za-z0-9\ ':./()<>,\"=àäâéèëêïîôûüç-[\]]*$/ )){
    et ceci pour la fonction:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function verifString( valeur, regex ) {
     
    	return regex.test(valeur);
    }
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    Merci!

    Souci cela m'autorise le caractère $, ca ne devrait pas normalement...

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 638
    Points : 66 668
    Points
    66 668
    Billets dans le blog
    1
    Par défaut
    ha ben si normal
    j'avais pas fait gaffe à ça...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ( document.forms[0].lib.value != '' && ! verifString(document.forms[0].lib.value, /^[A-Za-z0-9\ ':./()<>,\"=àäâéèëêïîôûüç[\]-]*$/ )){
    "-" indique un range de caractères sauf si il est placé en fin de classe
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    Alors j'ai mis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    "^[A-Za-z0-9\ ':./()<>\[\\],\"=àâäãçéèêîïìñôöòùûüÿ-]*$"
    Et je dois inclure dans cette regexp le symbole euro €

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 638
    Points : 66 668
    Points
    66 668
    Billets dans le blog
    1
    Par défaut
    Si tu avais au moins suivi mes conseils ....
    ça c'est pas tout a fait mais presque n'importe quoi ...



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function verifString( valeur, regex ) {
     
    	return regex.test(valeur);
    }
     
    alert( verifString('deux  €',/^[A-Za-z0-9\ ':./()<>[\],\"=àâäãçéèêîïìñôöòùûüÿ€-]*$/ ) )
    alert( verifString('deux  @',/^[A-Za-z0-9\ ':./()<>[\],\"=àâäãçéèêîïìñôöòùûüÿ€-]*$/ ) )
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  9. #9
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    j'avais pas compris que tu autorisais les chiffres...

  10. #10
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    allez, je m'amuse aussi:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <script type="text/javascript">
     
    var ch="Tout ce que tu veux mon gars, même des espaces et des &#$!";
     
    var reg=/[a-zàâäãçéèêîïìñôöòùûüÿ[><€()=,«»"\] -]/gi
     
    var ch2=ch.replace(reg,"|");
     
    if(ch2.match(/\|/gi).length!=ch.length){
    	alert("Rappel: vous n'avez droit qu'aux caractères suivants:\n\n" + reg.source.substring(1,reg.source.length-1).replace("\\",""))
    }
     
    </script>

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

Discussions similaires

  1. [Débutant] Limiter le nombre de caractères saisi dans un datagriview
    Par gmano dans le forum C#
    Réponses: 1
    Dernier message: 30/08/2012, 23h51
  2. Limiter la saisie à un nombre de caractère
    Par 0nn2belle dans le forum C
    Réponses: 8
    Dernier message: 04/12/2008, 17h09
  3. CComboBox::Limiter la Saisie des caractères
    Par bizulk dans le forum MFC
    Réponses: 6
    Dernier message: 13/09/2005, 15h42
  4. limiter la saisie dans un edit à des réels!!!
    Par shout dans le forum Windows
    Réponses: 10
    Dernier message: 21/06/2004, 16h20

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