Je souhaite valider mes entrées afin que l'utilisateur puisse simplement entrer des lettres. Le problème est qu’il ne vérifie qu’un seul champ mais j’ai tout sélectionné avec :input
code:
$("#formularID").submit(function() {
var allInputs = $(":input").val();
var regex = new RegExp("[a-zA-Z]");
if(regex.test(allInputs))
{
alert("true");
}else
{
alert("false");
return false;
}
});
J'apprécie chaque aide que je peux obtenir!
Réponses:
6 pour la réponse № 1Tout d’abord, vous devez parcourir chacun de vos éléments d’entrée, vous pouvez le faire en utilisant .each()
:
// Cycles through each input element
$(":input").each(function(){
var input = $(this).val();
...
});
Ensuite, votre RegExp vérifie uniquement si le premier caractère est une lettre. Si vous voulez vous assurer que seul un ensemble de lettres peut correspondre, vous voudrez utiliser ^[a-zA-Z]+$
au lieu:
$(":input").each(function(){
var input = $(this).val();
var regex = new RegExp("^[a-zA-Z]+$");
if(regex.test(input)) {
alert("true");
}else {
alert("false");
return false;
}
});