Supprimer voyelles et espaces dans une <input> [Résolu]

Tri4L 7 Messages postés mardi 3 avril 2018Date d'inscription 3 avril 2018 Dernière intervention - 3 avril 2018 à 11:30 - Dernière réponse : BunoCS 13758 Messages postés lundi 11 juillet 2005Date d'inscriptionModérateurStatut 19 avril 2018 Dernière intervention
- 3 avril 2018 à 16:13
Bonjour,
je souhaite pour un travail de recherche, trouver de l'aide pour un script qui peut m'aider à supprimer toutes les voyelles (a,e,i,u,o,y) puis espaces vides dans une <input> après appui sur un bouton. Donc si par exemple je rentre "azertyuiop" dans le <input>, le résultat après click sur le bouton deviens "zrtp". J'ai des connaissances en html / css mais alors en javascript je suis une vrai quiche pour l'instant...
Admettons:

<html>
    <head>
        <title></title>
 
        <script type="text/javascript">
        </script>

    </head>
    <body>

        <input id="inputbox01" width="50px;">
        <input type="button" value="Enlever voyelles" onclick="" />

    </body>
</html>


Je remercie les éventuels codeurs de vôtre aide!

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ICI

Merci d'y penser dans tes prochains messages.
Afficher la suite 

10 réponses

Répondre au sujet
BunoCS 13758 Messages postés lundi 11 juillet 2005Date d'inscriptionModérateurStatut 19 avril 2018 Dernière intervention - 3 avril 2018 à 13:53
+1
Utile
1
Bonjour,

Alors, t'aider, oui, ça doit être faisable. Par contre, faire le travail à ta place, non ;)

Tri4L 7 Messages postés mardi 3 avril 2018Date d'inscription 3 avril 2018 Dernière intervention - 3 avril 2018 à 14:34
Merci BunoCS de ta réponse, je comprends. Je n'y connais rien mais j'imagine que la première étape est de créer une variable (ou fonction?) qui récupère le contenu de "l'input".
Genre quelque chose comme ça:
Je créer une fonction que je nomme "mafonction", dans celle-ci je créer une variable que j'associe au contenu de l'input (id="inputbox01").
Je paramètre mon bouton pour lancer "mafonction" lors du click.
Mon raisonnement est t'il correct jusque-là? (Ceci est mon tout premier script!)

<html>
    <head>
        <title></title>
 
        <script type="text/javascript">
            function mafonction()
        {
            var mavariable = document.getElementById("inputbox01").value;
            ...
        }   
        </script>
    </head>
    <body>

        <input type="text" id="inputbox01" width="50px;">
        <input type="button" value="Enlever voyelles" onclick="mafonction()" />

    </body>
</html>
Commenter la réponse de BunoCS
BunoCS 13758 Messages postés lundi 11 juillet 2005Date d'inscriptionModérateurStatut 19 avril 2018 Dernière intervention - 3 avril 2018 à 14:35
+1
Utile
Il te faut quelques bases en Javascript, oui: variables et fonctions.
Ensuite, il faudra répondre à la question suivante: "comment récupérer le contenu d'un input ?"
Puis, celle-ci: "comment supprimer des caractères d'une chaine de caractère ?"
Et enfin: "que faire avec le résultat ?"

Pour répondre aux 2 premières questions, quelques petites recherches rapides t'aideront. Pour la dernière, à toi d'y répondre ;)
Commenter la réponse de BunoCS
Tri4L 7 Messages postés mardi 3 avril 2018Date d'inscription 3 avril 2018 Dernière intervention - Modifié par BunoCS le 3/04/2018 à 16:09
0
Utile
6
Ok, ensuite j'utilise la méthode "replace()" pour répondre a l'étapes suivantes cad, "comment supprimer des caractères d'une chaine de caractère ?" Le résultat est immédiat dans le <input> :

<html>
<head>
<title></title>

<script type="text/javascript">
function mafonction()
{
var mavariable = document.getElementById("inputbox01").value;
var res = mavariable.replace("a", "");                            
 document.getElementById("inputbox01").value = res;
}
</script>

</head>
<body>
<input type="text" id="inputbox01" width="50px;">
<input type="button" value="Enlever voyelles" onclick="mafonction()" />
</body>
</html>
Tri4L 7 Messages postés mardi 3 avril 2018Date d'inscription 3 avril 2018 Dernière intervention - 3 avril 2018 à 15:33
Au passage je rajoute un bouton effacer ce qui donne:

<html>
  <head>
    <title></title>
    <script type="text/javascript">
function mafonction()
{
var mavariable = document.getElementById("inputbox01").value;
var res = mavariable.replace(/a/g, "");
document.getElementById("inputbox01").value = res;
}
 function effacer()
{
 document.getElementById("inputbox01").value="";
}
</script>
  </head>
  <body>
    <input type="text" id="inputbox01" width="50px;">
    <input type="button" value="Enlever voyelles" onclick="mafonction()" />
    <input type="button" value="Effacer" onclick="effacer()" />
  </body>
</html>
Tri4L 7 Messages postés mardi 3 avril 2018Date d'inscription 3 avril 2018 Dernière intervention - 3 avril 2018 à 15:53
Bon c'est là que je bloque:
Cette ligne supprime tous les "a" --> var res = mavariable.replace(/a/g,"");
Comment rajouter la suppression des autres lettres: e,u,i,y?
BunoCS 13758 Messages postés lundi 11 juillet 2005Date d'inscriptionModérateurStatut 19 avril 2018 Dernière intervention - 3 avril 2018 à 16:08
Soit tu fais une boucle pour chaque lettre à supprimer, soit tu utilises des expressions régulières.

Note: fais attention à bien rajouter les balises code (cf. ta question que j'ai modifiée)
Tri4L 7 Messages postés mardi 3 avril 2018Date d'inscription 3 avril 2018 Dernière intervention - 3 avril 2018 à 16:11
Ok trouvé, donc voici le code final:

<html>
  <head>
    <title></title>
    <script type="text/javascript">
function mafonction()
{
var mavariable = document.getElementById("inputbox01").value;
var res = mavariable.replace(/a|e|i|o|u|y/g, "");

document.getElementById("inputbox01").value = res;
}
 function effacer()
{
 document.getElementById("inputbox01").value="";
}
</script>
  </head>
  <body>
   
   <input type="text" id="inputbox01" style="width: 50px;" >
    <input type="button" value="Code nostradamus" onclick="mafonction()" />
 <input type="button" value="Effacer" onclick="effacer()" />
  </body>
</html>


Vous devez vous demander l'utilité de ce script je pari!
BunoCS 13758 Messages postés lundi 11 juillet 2005Date d'inscriptionModérateurStatut 19 avril 2018 Dernière intervention - 3 avril 2018 à 16:13
Bien joué!
Si ton problème est résolu, merci de passer le topic en résolu (tout en haut, roue crantée,...)
Commenter la réponse de Tri4L

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.