Bonjour ,
Je voudrais vérifier si l’entrée de l’utilisateur est une adresse e-mail en JavaScript, avant de l’envoyer à un serveur ou de tenter de lui envoyer un e-mail, afin d’éviter les erreurs de frappe. Comment puis-je réaliser cela ?
Bonjour ,
Je voudrais vérifier si l’entrée de l’utilisateur est une adresse e-mail en JavaScript, avant de l’envoyer à un serveur ou de tenter de lui envoyer un e-mail, afin d’éviter les erreurs de frappe. Comment puis-je réaliser cela ?
Vous pouvez utiliser les expressions régulières, essayez le code suivant:
Code HTML:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<label for="email">Entrez une adresse e-mail: </label>
<input id="email"/>
<h2 id="res"></h2>
Code Javascript:
const validateEmail = (email) => {
return email.match(
/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
);
};
const validate = () => {
const $res = $('#res');
const email = $('#email').val();
$res.text('');
if (validateEmail(email)) {
$res.text(email + ' est valide.').css('color', 'green');
} else {
$res.text(email + ' n\'est pas valide.').css('color', 'red');
}
return false;
}
$('#email').on('input', validate);
tu peux voir le résultat comme montré ci-dessous:
Je vous recommande de voir le tutoriel suivant:
RegEX:
/^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/gm