Bonjour
Je suis en train de développer une petite interface pour gérer un répertoire téléphonique, avant d'envoyer la valeur du champ dans ma base de données, je fais un contrôle sur la longueur de la chaine (entre 1 et 30 caractères) et sur la présence de caractères spéciaux. Le premier test fonctionne mais pas le deuxième , j'ai beau retourner le problème dans tout les sens je n'arrive pas à trouver d'où viens le problème.
Le code :
Code :
- function verifchamps()
- {
- var champs = document.envoiemodif.lib_modif.value;
- //Permet de récupéré ce qui a été tapé au clavier et le traduit en hexa
- var keyCode = champs.which ? champs.which : champs.keyCode;
- var touche = String.fromCharCode(keyCode);
- // Liste des caractères authorisé
- var interdit = 'âäãçéìïòôöõùûüñ &*?!:;,\t#~"^¨%$£?²¤§%*()]{}<>|\\/`\'';
- if ((champs.lenght < 1)||(champs.length > 31)) {
- alert ("Pas de fonction vide SVP ni de fonction > 30 caracteres" );
- return false;
-
- }
- else
- {
-
- if(interdit.indexOf(touche) >= 0) {
- alert ("Caractère(s) interdit(s) détecté(s) -> rappel : seulement : abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_-éèàêî" );
- return false;
- } else {
- //on retourne vrai seulement si les deux tests sont ok (entre 1 et 30 et pas de caractères spéciaux)
- return true;
- }
- }
- }
|
Merci pour vos suggestions