Bonjour a tous, je suis nouveau et je fais face a un probleme. mon probleme est que, dans mon formulaire par exemple dans les champs nome et prenom, ils doivent prendre uniquement de lettre, pas de chiffre, je le fais, mais je ne peux pas entrer des noms composes, c'est a dire la touche espace ne fonctionne pas . par exemple je ne peux pas avoir Zavier Pierre, mais Zavierpierre. comment vous pouver m'apporter un peu de lumiere? je vous remercie.
voici mon code:
<script type="text/javascript">
function verifierCaracteres_prenom_eleve(event) {
var keyCode = event.which ? event.which : event.keyCode;
var touche = String.fromCharCode(keyCode);
var champ = document.getElementById('prenom');
var caracteres = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
if(caracteres.indexOf(touche) >= 0) {
champ.value += touche;
}
}
</script>
Décrivez ici ce que vous cherchez à obtenir
Décrivez ici vos erreurs ou ce que vous obtenez à la place de ce que vous attendez :(
N'oublie pas de cliquer sur "Il a répondu à ma question" pour que ton sujet soit validé.
Salut,
Sauf erreur, IndexOf ne s'utilise pas sur une string (ce que tu fais avec caracteres), tu dois utiliser un tableau pour que la fonction puisse faire une recherche.. Doc sur IndexOf
Mais le mieux reste selon moi d'utiliser une expression régulière (qui te permettra de faire des recherches un peu plus approfondie qu'une simple recherche sur des caractères)
Déjà en terme de code c'est cool, parce que tu n'as pas besoin d'écrire tout l'alphabet un simple a-zA-Z suffit :D pour par exemple effectuer une recherche sur des lettres.
merci Mika d'avoir penche sur mon cas, mais je ne vois pas trop comment faire, jai deja fait le travail j'ai seulement besoin que la touche 'espace' soit fonctionnelle dans dans le champ
le probleme est resolu, je ne l'aurais pas imagine, j'ai seulement ajoute un espace apres la chaine autorisee et ca fonctionne