Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Parser une chaine en Javascript [ Archives / AU SECOURS !!! ] (syl2)

mardi 8 juillet 2003 à 21:30:34 | Parser une chaine en Javascript

syl2

Bonjour,

j'essaye de réaliser une fonction qui va me tester la validité de mon champs nom dans un formulaire HTML.

C'est à dire que dans ce champs, je ne veux pas de chiffre, ou pas de caractères spéciaux ({,@ ....).

Je sais à peu près comment faire mon algo :

récupérer la taille de ma chaine dans mon champs nom
boucler de 1 à la taille de ma chaine
tester le caractère courant
si c un caractère alphanumérique, continuer sinon afficher un message d'erreur.

mais je suis bloqué par le si c un caractère alphanumérique :(. L'équivalent du ereg en javascript en somme.

Merci à tous ceux qui pourront m'aider

cordialemenent

Slyv

mardi 8 juillet 2003 à 22:12:03 | Re : Parser une chaine en Javascript

Dean

Bonjour,

Tout d'abord, je peux te dire que l'on peut procéder à une validation par regex en JavaScript. Mais ces objets ne sont inclus que dans IE me semble-t-il (du kro$oft quoi).

Sinon pour tester si une chaîne est alphanumérique il faut vérifier les codes de caractères.
Par exemple, tous les chiffres sont situés entre 0x30 et 0x39.
Pour les lettres c'est le même principe. La seule chose à faire est de se munir d'une table ASCII/Unicode (charmap de Windows fera l'affaire).

Dean - [ Lien ]


-------------------------------
Réponse au message :
-------------------------------

> Bonjour,
>
> j'essaye de réaliser une fonction qui va me tester la validité de mon champs nom dans un formulaire HTML.
>
> C'est à dire que dans ce champs, je ne veux pas de chiffre, ou pas de caractères spéciaux ({,@ ....).
>
> Je sais à peu près comment faire mon algo :
>
> récupérer la taille de ma chaine dans mon champs nom
> boucler de 1 à la taille de ma chaine
> tester le caractère courant
> si c un caractère alphanumérique, continuer sinon afficher un message d'erreur.
>
> mais je suis bloqué par le si c un caractère alphanumérique :(. L'équivalent du ereg en javascript en somme.
>
> Merci à tous ceux qui pourront m'aider
>
> cordialemenent
>
> Slyv

mercredi 9 juillet 2003 à 12:06:57 | Re : Parser une chaine en Javascript

syl2

Bonjour,

Merci pour ta réponse rapide, j'ai néanmoins encore un petit problème pour parvenir à réaliser le test de mon champs.

en effet, pour le moment, j'ai récupéré la taille de ma chaîne, et je fais une boucle pour tester chaque caractères un par un. Si le caractère n'est pas bon alors j'arrête la boucle et j'affiche un jolie message à l'utilisateur, sinon je passe au caractère suivant.

donc le caractère courant je le récupère ainsi :

position = document.test.Tval.valeur.charAt(i) avec i mon compteur, test le nom de mon formulaire et Tval le nom de mon champs.

et ensuite je teste en faisant si (position==0x30) sous entendu si je met un 0 dans mon champ alors tu rejète la chaine mais il ne rentre pas dans mon if :(

Voici ma fonction complète au cas où je n'ai pas été très explicite ;p

function valide(test)
{
var longueur=document.test.Tval.value.length;
var i;
for (i=0 ;i<longueur;i++)
{
var position=document.test.Tval.value.charAt(i);
alert(position);
if(position == 0x30)
alert("dans le if");
else
alert("dans le else");
}
}

Merci

Slyv


-------------------------------
Réponse au message :
-------------------------------

> Bonjour,
>
> Tout d'abord, je peux te dire que l'on peut procéder à une validation par regex en JavaScript. Mais ces objets ne sont inclus que dans IE me semble-t-il (du kro$oft quoi).
>
> Sinon pour tester si une chaîne est alphanumérique il faut vérifier les codes de caractères.
> Par exemple, tous les chiffres sont situés entre 0x30 et 0x39.
> Pour les lettres c'est le même principe. La seule chose à faire est de se munir d'une table ASCII/Unicode (charmap de Windows fera l'affaire).
>
> Dean - [ Lien ]
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Bonjour,
> >
> > j'essaye de réaliser une fonction qui va me tester la validité de mon champs nom dans un formulaire HTML.
> >
> > C'est à dire que dans ce champs, je ne veux pas de chiffre, ou pas de caractères spéciaux ({,@ ....).
> >
> > Je sais à peu près comment faire mon algo :
> >
> > récupérer la taille de ma chaine dans mon champs nom
> > boucler de 1 à la taille de ma chaine
> > tester le caractère courant
> > si c un caractère alphanumérique, continuer sinon afficher un message d'erreur.
> >
> > mais je suis bloqué par le si c un caractère alphanumérique :(. L'équivalent du ereg en javascript en somme.
> >
> > Merci à tous ceux qui pourront m'aider
> >
> > cordialemenent
> >
> > Slyv
>

mercredi 9 juillet 2003 à 15:55:19 | Re : Parser une chaine en Javascript

Dean

C'est normal car il faut utiliser non pas charAt qui renvoie un caractère mais charCodeAt qui retourne le code ASCII.

Fais des essais avec cette méthode et si tu as un problème je regarderai cela de plus près...

Dean - [ Lien ]


-------------------------------
Réponse au message :
-------------------------------

> Bonjour,
>
> Merci pour ta réponse rapide, j'ai néanmoins encore un petit problème pour parvenir à réaliser le test de mon champs.
>
> en effet, pour le moment, j'ai récupéré la taille de ma chaîne, et je fais une boucle pour tester chaque caractères un par un. Si le caractère n'est pas bon alors j'arrête la boucle et j'affiche un jolie message à l'utilisateur, sinon je passe au caractère suivant.
>
> donc le caractère courant je le récupère ainsi :
>
> position = document.test.Tval.valeur.charAt(i) avec i mon compteur, test le nom de mon formulaire et Tval le nom de mon champs.
>
> et ensuite je teste en faisant si (position==0x30) sous entendu si je met un 0 dans mon champ alors tu rejète la chaine mais il ne rentre pas dans mon if :(
>
> Voici ma fonction complète au cas où je n'ai pas été très explicite ;p
>
> function valide(test)
> {
> var longueur=document.test.Tval.value.length;
> var i;
> for (i=0 ;i<longueur;i++)
> {
> var position=document.test.Tval.value.charAt(i);
> alert(position);
> if(position == 0x30)
> alert("dans le if");
> else
> alert("dans le else");
> }
> }
>
> Merci
>
> Slyv
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Bonjour,
> >
> > Tout d'abord, je peux te dire que l'on peut procéder à une validation par regex en JavaScript. Mais ces objets ne sont inclus que dans IE me semble-t-il (du kro$oft quoi).
> >
> > Sinon pour tester si une chaîne est alphanumérique il faut vérifier les codes de caractères.
> > Par exemple, tous les chiffres sont situés entre 0x30 et 0x39.
> > Pour les lettres c'est le même principe. La seule chose à faire est de se munir d'une table ASCII/Unicode (charmap de Windows fera l'affaire).
> >
> > Dean - [ Lien ]
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Bonjour,
> > >
> > > j'essaye de réaliser une fonction qui va me tester la validité de mon champs nom dans un formulaire HTML.
> > >
> > > C'est à dire que dans ce champs, je ne veux pas de chiffre, ou pas de caractères spéciaux ({,@ ....).
> > >
> > > Je sais à peu près comment faire mon algo :
> > >
> > > récupérer la taille de ma chaine dans mon champs nom
> > > boucler de 1 à la taille de ma chaine
> > > tester le caractère courant
> > > si c un caractère alphanumérique, continuer sinon afficher un message d'erreur.
> > >
> > > mais je suis bloqué par le si c un caractère alphanumérique :(. L'équivalent du ereg en javascript en somme.
> > >
> > > Merci à tous ceux qui pourront m'aider
> > >
> > > cordialemenent
> > >
> > > Slyv
> >
>

mercredi 9 juillet 2003 à 16:14:40 | Re : Parser une chaine en Javascript

syl2

Kikoo,

merci beaucoup, ça marche parfaitement bien maintenant :D

j'ai plus qu'à faire ma restriction pour ma condition et ce sera nickel.

Merci mille fois

slyv



-------------------------------
Réponse au message :
-------------------------------

> C'est normal car il faut utiliser non pas charAt qui renvoie un caractère mais charCodeAt qui retourne le code ASCII.
>
> Fais des essais avec cette méthode et si tu as un problème je regarderai cela de plus près...
>
> Dean - [ Lien ]
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Bonjour,
> >
> > Merci pour ta réponse rapide, j'ai néanmoins encore un petit problème pour parvenir à réaliser le test de mon champs.
> >
> > en effet, pour le moment, j'ai récupéré la taille de ma chaîne, et je fais une boucle pour tester chaque caractères un par un. Si le caractère n'est pas bon alors j'arrête la boucle et j'affiche un jolie message à l'utilisateur, sinon je passe au caractère suivant.
> >
> > donc le caractère courant je le récupère ainsi :
> >
> > position = document.test.Tval.valeur.charAt(i) avec i mon compteur, test le nom de mon formulaire et Tval le nom de mon champs.
> >
> > et ensuite je teste en faisant si (position==0x30) sous entendu si je met un 0 dans mon champ alors tu rejète la chaine mais il ne rentre pas dans mon if :(
> >
> > Voici ma fonction complète au cas où je n'ai pas été très explicite ;p
> >
> > function valide(test)
> > {
> > var longueur=document.test.Tval.value.length;
> > var i;
> > for (i=0 ;i<longueur;i++)
> > {
> > var position=document.test.Tval.value.charAt(i);
> > alert(position);
> > if(position == 0x30)
> > alert("dans le if");
> > else
> > alert("dans le else");
> > }
> > }
> >
> > Merci
> >
> > Slyv
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Bonjour,
> > >
> > > Tout d'abord, je peux te dire que l'on peut procéder à une validation par regex en JavaScript. Mais ces objets ne sont inclus que dans IE me semble-t-il (du kro$oft quoi).
> > >
> > > Sinon pour tester si une chaîne est alphanumérique il faut vérifier les codes de caractères.
> > > Par exemple, tous les chiffres sont situés entre 0x30 et 0x39.
> > > Pour les lettres c'est le même principe. La seule chose à faire est de se munir d'une table ASCII/Unicode (charmap de Windows fera l'affaire).
> > >
> > > Dean - [ Lien ]
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > Bonjour,
> > > >
> > > > j'essaye de réaliser une fonction qui va me tester la validité de mon champs nom dans un formulaire HTML.
> > > >
> > > > C'est à dire que dans ce champs, je ne veux pas de chiffre, ou pas de caractères spéciaux ({,@ ....).
> > > >
> > > > Je sais à peu près comment faire mon algo :
> > > >
> > > > récupérer la taille de ma chaine dans mon champs nom
> > > > boucler de 1 à la taille de ma chaine
> > > > tester le caractère courant
> > > > si c un caractère alphanumérique, continuer sinon afficher un message d'erreur.
> > > >
> > > > mais je suis bloqué par le si c un caractère alphanumérique :(. L'équivalent du ereg en javascript en somme.
> > > >
> > > > Merci à tous ceux qui pourront m'aider
> > > >
> > > > cordialemenent
> > > >
> > > > Slyv
> > >
> >
>



Cette discussion est classé dans : javascript, caractère, chaine, champs, parser


Répondre à ce message

Sujets en rapport avec ce message

Equivalent de inStr pour JavaScript [ par Nabel ] Salut à toutes & à tous Est-ce quequelqu'un connaitrait l'équivalent de inStr de VBScrpit en JavaScript. inStr(chaine,car) renvoie l'endroit des occur Comment convertir une chaine en object ? [ par Dexterin ] Bonjour !J'ai un gros soucis...Je désire créer une fonction javascript qui me donne un object en fonction d'une chaine de caractère :Exemple, actuelle verif formulaire. [ par kikos ] Slt à tous,j'utise une fonction javascript qui permet de vérifier qu'il n'y ai po de lettre dans le champs :function verifcode(car) {// exclusivement Une fonction javascript specifique à inclure dans le bouton valider [ par carmen256 ] J' ai un problème de code . Je voudrai insérer une fonction spécifique dans un bouton valider .Une page html nommé formulaire contient deux champs tex Vérifier le champs "heure" d'un formulaire [ par bcsh ] Bonjour à tous !J'ai besoin d'aide, car je cherche le moyen de controler par javascript si un champ dans lequel il faut insérer une certaine heure res paramètres javascript --> XSL [ par butthead6511 ] salut,bon voilà mon problème:j'ai une page html avec du javascript. Sur ma page j'ai une zone de saisie et un bouton de validation qui appelle une fon Javascript : tester si une chaine contient retour [ par javatintin ] Bonjour En javascript, Je n'arrive pas à tester si une chaine de caractère contient un retour à la ligne ou autre caractère spéciaux   (CHR(13), CHR urgent!!! fonction javascript sur un string [ par nourlhouda ] Bonjour, j'ai une chaine  de date sous la forme aaaammjj, définie comme string je veu lire cette chaine de caractère afin de la diviser en 3 parties: Formatage de chaine javascript [ par shaft107 ] slt à tousj'ai 4 petits pb,1) je voudrai en réalité changer le format de ma date après la saisie ex : l'utilisateur saisi 20092004 et moi je lui prése Caractère hexa \00 dans une chaine [ par mirmatthieu ] Salut,J'essai d'utiliser le caractère \00 (caractère null) dans une chaine javascript de la manière suivante :alert("a\00b");Mais le résultat qui s'af


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,468 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.