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 :

Conversion des caractères spéciaux sur un événement onChange


Sujet :

JavaScript

  1. #1
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2008
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2008
    Messages : 48
    Par défaut Conversion des caractères spéciaux sur un événement onChange
    Bonjour,
    A l'instar d'un <input onChange="javascript:this.value=this.value.toUpperCase"> (qui convertit le contenu d'un champ en majucules) par exemple, je suis à la recherche d'une fonction javascript qui me permettrait de convertir les caractères spéciaux (accents, $£%*µ et autres \_|-[#{) saisis dans un champ par leur correspondance en caractères normaux (lorsqu'ils existent). Le tout en minuscules par la même occasion.

    Par exemple :
    - titi & grominet -> titigrominet
    - Frédéric_Martin -> fredericmartin
    - $£1%2{#3} -> 123

    Le script final ne devant supporter que les caractères dont la valeur décimale est [48-57] (les chiffres) et [97-122] (les lettres de a à z, en minuscules).

    Si quelqu'un a une idée, ou un script existant... je suis preneur !

    -----

    Bon j'ai trouvé ça dans ce forum :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function RemoveAccents(Texte) {
    var Accents = 'àâäéèêëïïöôûüùç';
    var NoAccen = 'aaaeeeeiioouuuc';
    Accents = Accents.split('');
    NoAccen = NoAccen.split('');
    var i=0;
    while(Accents[i]){
    	var Reg=new RegExp(Accents[i],'gi');
    	Texte=Texte.replace(Reg,NoAccen[i]);
    	i++
    	}
    return Texte;
    }
    Et ça fonctionne très bien pour les accents, mais comment faire pour les caractères spéciaux, hors chiffres et lettres ($£µ*%+=}])@\_|-[({'#"&§/:.;,?!) ?

  2. #2
    Membre Expert
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 56

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Par défaut
    pourquoi ne pas remplacer les caractères spéciaux par un vide en utilisant la fonction replace sur ta chaine ? (tu peux lui passer une nouvelle expression reguliere) ?

    ERE

Discussions similaires

  1. Fonction conversion des caractères spéciaux en entités HTML
    Par JustyDark dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/04/2015, 18h19
  2. Réponses: 4
    Dernier message: 03/11/2009, 12h09
  3. Conversion des caractères spéciaux insérés
    Par marty499 dans le forum Langage
    Réponses: 1
    Dernier message: 02/06/2008, 17h18
  4. Conversion des caractères spéciaux en &xyz;
    Par thomzon dans le forum Développement Web en Java
    Réponses: 4
    Dernier message: 05/09/2007, 08h35
  5. Réponses: 2
    Dernier message: 15/06/2007, 16h24

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