|
|
|
| /* Edition Française */ |
| « Précédent | Page 1 | Suivant » |
Re: WTF avec accusé de réception.
2008-04-11 02:28
•
par
Pierre Tramo
(non enregistré)
|
|
- 1. la méthode clear() n'est pas définie par le DOM (HTML Level 1) pour les objets HTMLFormElement; par contre reset() existe, mais malheureusement ne vide pas les champs, elle se contente de les remettre à leur valeur d'origine, qui n'est pas forcément vide. La première fonction est donc totalement légitime.
- 2. là je suis d'accord - 3. la 'solution' de remplacement ne prend pas en compte l'éventuel séparateur '-', pris en compte dans la fonction Il ne faudrait pas non plus prendre pour des WTF certaines fonctions utiles et les expressions rationnelles ne sont pas à franchement parler la solution ultime de validation... |
Re: WTF avec accusé de réception.
2008-04-11 04:37
•
par
Jocelyn Demoy
|
|
La 1 passe encore (pour faire un raz sur un champ texte ...) mais la 2 et 3 sont difficilement défendable.
Les WTFs dépendent en effet du contexte et peut être dans certains cas ils sont même justifiés. Toute rectification est bonne à prendre Pierre mais d'après moi la page dans sa globalité penche quand même du coté WTF de la balance ;) Au passage quelle serait la bonne regexp pour la 3? |
Re: WTF avec accusé de réception.
2008-04-11 05:29
•
par
Pierre Guinoiseau
(non enregistré)
|
|
@Pierre Tramo: "les expressions rationnelles ne sont pas à franchement parler la solution ultime de validation..."
Heu oui bien sûr... les regexps sont faites exprès pour cela, elles peuvent valider n'importe quel format de chaine de caractère, et sont très efficaces... et tu dis que ce n'est pas la meilleure solution ? Il te faut quoi ? |
Re: WTF avec accusé de réception.
2008-04-11 08:59
•
par
Sylvain Mallet
(non enregistré)
|
|
La première fois que j'ai vu le code pour valider les code postaux, je me suis dis que sa raison d'être était une validation exhaustive car les code postaux Canadiens ont certaines règles spécifique. Par exemple, les caractères D, F, I, O, Q, et U ne sont jamais utilisé; mais la fonction ne vérifie même pas ça.
|
Re: WTF avec accusé de réception.
2008-04-11 09:02
•
par
David Boissonnault
(non enregistré)
|
|
Ahh désolé j'ai fait une petite erreur lors de mon envoi à Jocelyn, c'est pas .clear(); pour vider un form, mais bien .reset();
|
Re: WTF avec accusé de réception.
2008-04-11 09:19
•
par
David Boissonnault
(non enregistré)
|
|
Pour la regexp pour le #3:
str.toUpperCase().replace(/[^A-Z0-9]/g,'').match(/^([A-Z][0-9]){3}$/) Et même que le toUpperCase() est facultatif car en envoyant les requêtes sans passé par le formulaire, en minuscule, le serveur reconnais les codes postaux même en minuscule... |
Re: WTF avec accusé de réception.
2008-04-11 10:31
•
par
Tamahome
(non enregistré)
|
|
en ce qui concerne la ligne "/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/" ce n'est pas un WTF, c'est un code javascript fournit par une société tierce (Omniture en l'occurence) et que de très nombreux site utilisent (genre www.rushcollection.com par exemple). Aucun rapport avec la poste canadienne.
|
Re: WTF avec accusé de réception.
2008-04-11 11:49
•
par
Pierre Tramo
(non enregistré)
|
Je n'ai pas dit qu'elles n'étaient pas efficaces sur les chaines de caractères et personnellement, j'apprécie leur fonctionnement - pour des validations simples. Mon opinion sur la question est qu'il vaut mieux écrire une validation ad-hoc dès que la regexp qui ferait le même job fait plus de 20 caractères, pour des soucis de lisibilité et de facilité d'accès (oui, parce qu'il faut aussi penser aux personnes qui reprendront le code derrière et qui auront à interpréter mentalement la regexp). Par contre, de là à dire qu'elles sont faites pour ça... Au départ une regexp, c'est surtout un moyen efficace de reconnaitre un motif et de le chercher dans un texte de taille conséquente. Les utiliser pour la validation n'est AMHA qu'un sous-produit de leur pouvoir de reconnaissance. Ceci dit, on est vendredi soir et en plus d'être d'une mauvaise foi terrible, je me sentais en veine de troller un peu ;) |
| « Précédent | Page 1 | Suivant » |