


Avant de discuter en profondeur de la validation de formulaire, réfléchissons d'abord à la véritable signification de la validation de formulaire. À la base, la validation de formulaire est un système qui détecte les données de contrôle invalides et signale ces erreurs pour les utilisateurs finaux. En d'autres termes, la validation du formulaire effectue une série de vérifications sur le formulaire avant qu'il ne soit soumis au serveur et informe l'utilisateur de corriger les erreurs.
Mais qu’est-ce que la validation de formulaire réellement ?
est une optimisation.
La raison pour laquelle la validation du formulaire est une optimisation est que le mécanisme de validation du formulaire à lui seul ne suffit pas à garantir que les données du formulaire soumises au serveur sont correctes et valides. D'un autre côté, la validation des formulaires est conçue pour permettre aux applications Web de générer des erreurs plus rapidement. En d’autres termes, il est préférable d’utiliser le mécanisme de gestion intégré au navigateur pour informer l’utilisateur qu’une page Web contient des valeurs de contrôle de formulaire non valides. Dans le passé, les données circulaient sur le réseau uniquement pour que le serveur avertisse l'utilisateur qu'il avait saisi des données incorrectes. Si le navigateur est entièrement capable de détecter les erreurs avant qu'elles ne quittent le client, nous devrions en profiter.
Cependant, la vérification du formulaire du navigateur ne suffit pas à gérer toutes les erreurs.
Cela dit, HTML5 introduit huit méthodes pour valider l'exactitude des données des contrôles de formulaire. Examinons-les tour à tour, mais nous présenterons d'abord l'objet ValidityState utilisé pour renvoyer l'état de validation.
Dans les navigateurs prenant en charge la validation de formulaire HTML5, l'objet ValidityState est accessible via le contrôle de formulaire :
var valCheck = document.myForm.myInput.validity;
Cette ligne de code obtient l'objet ValidityState de l'élément de formulaire nommé myInput. L'objet contient des références aux huit états de vérification, ainsi que le résultat final de la vérification.
La méthode d'appel est la suivante :
valCheck.valid
Après l'exécution, nous obtiendrons une valeur booléenne, qui indique si le contrôle de formulaire a passé toutes les contraintes de validation. L'attribut valide peut être considéré comme le résultat final de la vérification : si les huit contraintes sont passées, l'attribut valide est vrai. Sinon, tant qu'une contrainte échoue, l'indicateur valide est faux.
Comme mentionné précédemment, il existe huit contraintes de validation possibles pour tout élément de formulaire. Chaque condition a un nom d'attribut correspondant dans l'objet ValidityState, accessible de la manière appropriée. Analysons-les un par un pour voir comment ils sont associés aux contrôles du formulaire et comment les vérifier en fonction de l'objet ValidityState :
1 valueMissing
Objectif : Garantir la valeur dans le. contrôle de formulaire Rempli.
Utilisation : définissez l'attribut obligatoire sur true dans le contrôle de formulaire.
Exemple :
<input type="text" name="myText" required>
Description détaillée : Si le contrôle de formulaire définit l'attribut requis, le contrôle restera dans un état invalide jusqu'à ce que l'utilisateur remplisse la valeur ou remplisse la valeur via appel codé. Par exemple, une zone de saisie de texte vide échoue à la vérification requise à moins que du texte n'y soit saisi. Lorsque la valeur d'entrée est vide, valueMissing renvoie true.
2. typeMismatch
Objectif : S'assurer que la valeur du contrôle correspond au type attendu (tel que numéro, e-mail, URL, etc.).
Utilisation : Spécifiez la valeur de l'attribut de type. du contrôle de formulaire.
Exemple :
<input type="email" name="myEmail">
Description détaillée : Le type de contrôle de formulaire spécial n'est pas seulement utilisé pour personnaliser le clavier du téléphone mobile si le navigateur peut reconnaître que la saisie dans le contrôle de formulaire ne le fait pas. respectez les règles de type correspondantes, par exemple, il n'y a pas de symbole @ dans l'adresse e-mail ou la valeur d'entrée du contrôle de type numérique n'est pas un nombre valide, le navigateur marquera le contrôle pour indiquer une incompatibilité de type. Quelle que soit la condition d’erreur, typeMismatch renverra true.
3. patternMismatch
Objectif : Vérifier si l'entrée est dans un format valide selon les règles de format définies sur le contrôle de formulaire.
Utilisation : définissez l'attribut de motif sur le contrôle de formulaire et attribuez des règles de correspondance appropriées.
Exemple :
<input type="text" name="creditcardnumber" pattern="[0-9]{16}" title="A credit card number is 16 digits with no spaces or dashes">
Description détaillée : L'attribut pattern fournit aux développeurs un moyen puissant et flexible de définir un mécanisme de validation d'expression régulière pour les valeurs de contrôle de formulaire. Lorsque l'attribut pattern est défini pour un contrôle, patternMismatch renverra une valeur vraie tant que la valeur du contrôle d'entrée n'est pas conforme aux règles du modèle. Du point de vue des conseils d'utilisation et des références techniques, vous devez définir l'attribut title dans le contrôle de formulaire contenant l'attribut pattern pour illustrer le rôle de la règle.
4. tropLong
Objectif : éviter que les valeurs d'entrée contiennent trop de caractères.
Utilisation : définissez l'attribut maxLength sur le contrôle de formulaire.
Exemple :
<input type="text" name="limitedText" maxLength="140">
Détails : Si la longueur de la valeur d'entrée dépasse maxLength, la fonctionnalité tropLong retournera vrai. Bien que les contrôles de formulaire limitent généralement la longueur maximale des entrées utilisateur, il existe des situations dans lesquelles la longueur maximale peut être dépassée, par exemple en la définissant par programme.
5. rangeUnderflow
Objectif : Limiter la valeur minimale des contrôles numériques.
Utilisation : définissez l'attribut min pour le contrôle de formulaire et attribuez-lui la valeur minimale autorisée.
Exemple :
<input type="range" name="ageCheck" min="18">
Description détaillée : Dans un contrôle de formulaire qui nécessite une vérification de plage numérique, la valeur est susceptible d'être temporairement inférieure à la limite inférieure définie. À ce stade, la propriété rangeUnderflow de ValidityState renverra true.
6. rangeOverflow
Objectif : Limiter la valeur maximale des commandes numériques.
Utilisation : définissez l'attribut max pour le contrôle de formulaire et attribuez-lui la valeur maximale autorisée.
Exemple :
<input type="range" name="kidAgeCheck" max="12">
详细说明:与rangeUnderflow类似,如果一个表单控件的值比max更大,特性将返回true。
7、stepMismatch
目的:确保输入值符合min、max及step即设置。
用法:为表单控件设置step特性,指定数值的增量。
示例:
<input type="range" name="confidenceLevel" min="0" max="100" step="5">
详细说明:此约束条件用来保证数值符合min、max和step的要求。换句话说,当前值必须是最小值与step特性值的倍数之和。例如,范围从0到100,step特性值为5,此时就不允许出现17,否则stepMismatch返回true值。
8、customError
目的:处理应用代码明确设置及计算产生的错误。
用法:调用setCustomValidity(message)将表单控件置于customError状态。
示例:
passwordConfirmationField.setCustomValidity("Password values do not match.");
详细说明:浏览器内置的验证机制不适用时,需要显示自定义验证错误信息。当输入值不符合语义规则时,应用程序代码应设置这些自定义验证消息。
自定义验证消息的典型用例是验证控件中的值是否一致。例如,密码和密码确认两个输人框的值不匹配。只要定制了验证消息,控件就会处于无效状态,并且customError返回true。要清除错误,只需在控件上调用setCustomValidity("")即可。
以上就是详解HTML5中表单验证的8种方法介绍 的内容,更多相关内容请关注PHP中文网(www.php.cn)!

H5 est HTML5, la cinquième version de HTML. HTML5 améliore l'expressivité et l'interactivité des pages Web, introduit de nouvelles fonctionnalités telles que les balises sémantiques, le support multimédia, le stockage hors ligne et le dessin de toile, et favorise le développement de la technologie Web.

L'accessibilité et la conformité aux normes du réseau sont essentielles au site Web. 1) L'accessibilité garantit que tous les utilisateurs ont un accès égal au site Web, 2) les normes du réseau suivent pour améliorer l'accessibilité et la cohérence du site Web, 3) l'accessibilité nécessite l'utilisation de HTML sémantique, de navigation par clavier, de contraste des couleurs et de texte alternatif, 4) suivant ces principes n'est pas seulement une exigence morale et légale, mais également l'amplification de la base d'utilisateurs.

La balise H5 dans HTML est un titre de cinquième niveau qui est utilisé pour marquer des titres ou des sous-titres plus petits. 1) La balise H5 aide à affiner la hiérarchie du contenu et à améliorer la lisibilité et le référencement. 2) Combiné avec CSS, vous pouvez personnaliser le style pour améliorer l'effet visuel. 3) Utilisez raisonnablement les balises H5 pour éviter les abus et assurer la structure du contenu logique.

Les méthodes de création d'un site Web dans HTML5 incluent: 1. Utilisez des balises sémantiques pour définir la structure de la page Web, telle que, etc.; 2. Intégrer le contenu multimédia, l'utilisation et les balises; 3. Appliquer des fonctions avancées telles que la vérification du formulaire et le stockage local. Grâce à ces étapes, vous pouvez créer une page Web moderne avec une structure claire et des fonctionnalités riches.

Une structure de code H5 raisonnable permet à la page de se démarquer parmi beaucoup de contenu. 1) Utilisez des étiquettes sémantiques telles que, etc. pour organiser le contenu pour rendre la structure claire. 2) Contrôlez l'effet de rendu des pages sur différents appareils via la disposition CSS tels que Flexbox ou Grid. 3) Implémentez la conception réactive pour s'assurer que la page s'adapte à différentes tailles d'écran.

Les principales différences entre les versions HTML5 (H5) et les anciennes de HTML incluent: 1) H5 introduit des balises sémantiques, 2) prend en charge le contenu multimédia et 3) fournit des fonctions de stockage hors ligne. H5 améliore la fonctionnalité et l'expressivité des pages Web via de nouvelles balises et API, telles que et des balises, améliorant l'expérience utilisateur et les effets SEO, mais doit faire attention aux problèmes de compatibilité.

La différence entre H5 et HTML5 est: 1) HTML5 est une norme de page Web qui définit la structure et le contenu; 2) H5 est une application Web mobile basée sur HTML5, adaptée au développement rapide et au marketing.

Les caractéristiques principales de HTML5 incluent des balises sémantiques, une prise en charge multimédia, une amélioration de la forme, un stockage hors ligne et un stockage local. 1. Tags sémantiques tels que, améliorer la lisibilité du code et l'effet SEO. 2. Prise en charge multimédia simplifie le processus d'intégration du contenu multimédia via et des balises. 3. L'amélioration du formulaire introduit de nouveaux types d'entrée et des propriétés de vérification, simplifiant le développement de formulaire. 4. Stockage hors ligne et stockage local Améliorez les performances de la page Web et l'expérience utilisateur via ApplicationCache et LocalStorage.


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Dreamweaver CS6
Outils de développement Web visuel

Télécharger la version Mac de l'éditeur Atom
L'éditeur open source le plus populaire

mPDF
mPDF est une bibliothèque PHP qui peut générer des fichiers PDF à partir de HTML encodé en UTF-8. L'auteur original, Ian Back, a écrit mPDF pour générer des fichiers PDF « à la volée » depuis son site Web et gérer différentes langues. Il est plus lent et produit des fichiers plus volumineux lors de l'utilisation de polices Unicode que les scripts originaux comme HTML2FPDF, mais prend en charge les styles CSS, etc. et présente de nombreuses améliorations. Prend en charge presque toutes les langues, y compris RTL (arabe et hébreu) et CJK (chinois, japonais et coréen). Prend en charge les éléments imbriqués au niveau du bloc (tels que P, DIV),

Dreamweaver Mac
Outils de développement Web visuel

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP
