Les plats clés
- HTML5 introduit une gamme de nouveaux types d'entrée et attributs pour les formulaires, notamment le courrier électronique, le tél, l'URL, la recherche, le numéro, la plage, la date, la datetime, la date-local, le mois, la semaine, l'heure et la couleur, qui fournissent une entrée native Assistance et validation sans aucun code JavaScript.
- HTML5 propose des options de sortie en lecture seule, y compris la sortie (le résultat d'un calcul ou d'une action utilisateur), de progression (une barre de progression) et d'un compteur (une échelle qui peut changer entre les couleurs en fonction des valeurs définies pour les attributs) . Il permet également d'utiliser des éléments d'étiquette autour ou à c?té de l'entrée elle-même avec un attribut pour indiquer l'ID de l'entrée.
- Bien que les types d'entrée HTML5 soient l'avenir, il est important d'utiliser toujours le type d'entrée correct pour les données que vous demandez et valider les données utilisateur du c?té serveur. La validation c?té client n'a jamais été et ne sera jamais un substitut à la validation c?té serveur.
- Type d'entrée = "Text"
- Type d'entrée = "Checkbox"
- Type d'entrée = "radio"
- entrée type = "mot de passe"
- entrée type = "Hidden" - Pour les données, l'utilisateur ne peut pas afficher
- entrée type = "fichier" - pour les téléchargements
- TextArea - Pour une entrée de texte plus longue
- Sélectionner - pour les listes déroulantes Bouton
- - généralement utilisé pour soumettre un formulaire, bien que l'entrée type = "soumettre" et l'entrée type = "image" puisse également être utilisée.
Aussi:
- Les possibilités de style CSS étaient limitées,
- Les contr?les personnalisés tels que les cueilleurs de date et de couleur ont d? être développés en code, et
- Validation c?té client requise JavaScript.
Types d'entrée HTML5 supplémentaires
Un déluge de nouveaux types d'entrée a été introduit. Ceux-ci fournissent une assistance et une validation des entrées natives sans aucun code JavaScript…Attributs d'entrée
Sauf indication contraire, les champs d'entrée peuvent avoir l'un des attributs spécifiques au formulaire suivant. Plusieurs sont des attributs booléens, c'est-à-dire qu'ils ne nécessitent pas de valeurs, par exemple<span><span><span><input</span> type<span>="email"</span> name<span>="email"</span> required /></span></span>
Bien que vous puissiez les ajouter si vous préférez une syntaxe de type XHTML plus stricte, par ex.
<span><span><span><input</span> type<span>="email"</span> name<span>="email"</span> required<span>="required"</span> /></span></span>
- Verbatim - Contenu non multiples tel que les noms d'utilisateur
- Latin - Script latin tel que les champs de recherche
- nom de latin - noms, c'est-à-dire avec la capitalisation initiale de la lettre
- latin-prose - Contenu en prose tels que les messages, les tweets, etc.
- Numérique - Entrée numérique où le nombre ou la plage ne serait pas approprié, par ex. Numéros de carte de crédit
Notez que les champs de date doivent toujours utiliser yyyy-mm-dd pour la valeur, min et max attributs.
L'exemple suivant demande un e-mail obligatoire qui se termine par @ mysite.com et se concentre lorsque la page se charge:
<span><span><span><input</span> type<span>="email"</span> name<span>="email"</span> required /></span></span>
Datalists
Un datalist contient un ensemble d'options appropriées pour tout type d'entrée, par ex.<span><span><span><input</span> type<span>="email"</span> name<span>="email"</span> required<span>="required"</span> /></span></span>
Lorsque le DataList est pris en charge, le navigateur présente des options d'achèvement automatique lorsque vous commencez à taper. La liste entière est généralement affichée si vous double-cliquez sur le contr?le ou cliquez sur la flèche vers le bas (si il est indiqué). Contrairement à une liste déroulante de sélection standard, l'utilisateur est libre de remplacer ces choix et de saisir sa propre valeur. Il est possible de définir des valeurs et du texte comme des options de sélection standard, par exemple
<span><span><span><input</span> </span></span><span> <span>type<span>="email"</span> </span></span><span> <span>name<span>="login"</span> </span></span><span> <span>pattern<span>="@mysite\.com$"</span> </span></span><span> <span>autocomplete<span>="email"</span> </span></span><span> <span>autofocus </span></span><span> <span>required /></span></span>
mais sachez que les implémentations diffèrent. Par exemple, Firefox complete automatiquement sur le texte lui-même (Internet Explorer) tandis que Chrome préfère la valeur (IE) et montre le texte grisé:

Les données des données peuvent être peuplées de JavaScript si vous souhaitez récupérer des options via Ajax.
Validation de désactivation
La validation de l'ensemble du formulaire peut être désactivée en définissant un attribut Novaliate sur l'élément de formulaire. Alternativement, vous pouvez définir un attribut FormNovatidate sur le bouton / image de soumission du formulaire. N'oubliez pas non plus que la définition de l'attribut désactivé d'une entrée empêchera la validation sur ce champ.champs de sortie
Bien que nous discutons principalement des types d'entrée, HTML5 offre également des options de sortie en lecture seule:- Sortie - Le résultat d'un calcul ou d'une action utilisateur
- Progrès - Une barre de progression (la valeur et les attributs max définissent le statut)
- mètre - Une échelle qui peut changer entre vert, ambre et rouge en fonction des valeurs définies pour la valeur des attributs, min, max, faible, élevé et optimal
Séparation et étiquetage des entrées
La spécification du formulaire whatwg.org indique:Chaque partie d'un formulaire est considérée comme un paragraphe et est généralement séparée des autres parties en utilisantIntéressant. J'utilise normalement une div, bien que je doute que cela compte du point de vue sémantique. Une balise P est plus courte, mais il est possible que vous deviez appliquer une classe pour modifier les marges. Plus important encore, vous devez utiliser des éléments d'étiquette autour ou à c?té de l'entrée elle-même avec un attribut pour indiquer l'ID de l'entrée, par ex.des éléments
<span><span><span><input</span> type<span>="email"</span> name<span>="email"</span> required /></span></span>
pas de contr?les standard
Il n'y a pas de directives d'interface spécifiques à suivre pour les fournisseurs de navigateurs. Ceci est intentionnel: un sélecteur de dattes contr?lé par souris typique peut être trop petit sur un appareil mobile afin que le fournisseur puisse implémenter une alternative tactile.Prise en charge du navigateur
Tous les types et attributs d'entrée ne sont pas pris en charge dans tous les navigateurs. En général, la plupart des navigateurs modernes de IE10 incluent des bases telles que le courrier électronique et le numéro. Cependant, les types de dates ne sont pris en charge que dans les navigateurs WebKit et Blink au moment de la rédaction. Le navigateur reviendra à une entrée de texte standard lorsqu'un type spécifique et ignoreront les attributs lorsque ces valeurs ne sont pas prises en charge.Utilisez toujours le type correct!
Il est important d'utiliser le type d'entrée correct pour les données que vous demandez. Cela peut sembler évident, mais vous rencontrerez des situations lorsque vous serez tenté d'utiliser une entrée de texte standard. Considérez les dates. Le support est inégal et cela conduit à des problèmes de mise en ?uvre:- L'entrée de date standard renvoie toujours les dates au format Yyyy-mm-dd, quelle que soit la fa?on dont le sélecteur de date est présenté dans votre paramètre.
- IE et Firefox se replieront à une entrée de texte standard, mais vos utilisateurs peuvent s'attendre à saisir des valeurs en US MM-DD-YYY ou European DD-MM-Yyy Format.
- Un sélectionneur de dates JavaScript tel que celui de JQuery UI vous permet de définir un format personnalisé - ou même Yyyy-Mm-dd pour la cohérence - mais vous ne pouvez pas garantir que JavaScript sera activé.
valider le serveur c?té serveur
La validation du navigateur n'est pas garantie. Même si vous avez forcé tout le monde à accéder en utilisant la dernière version de Chrome, vous ne pourriez jamais empêcher:- Les bogues du navigateur ou les échecs JavaScript permettant des données non valides
- L'utilisateur modifiant votre HTML ou vos scripts à l'aide d'outils de navigateur
- Soumission de systèmes hors de votre contr?le, ou
- Interception de données entre le navigateur et le serveur (certainement sur http).
Questions fréquemment posées (FAQ) sur les formulaires HTML5 Forms Marquage
Quelle est l'importance d'utiliser HTML5 dans le balisage de la forme?
HTML5 introduit une gamme de nouveaux types et attributs d'entrée qui offrent une meilleure expérience utilisateur pour le remplissage de formulaire. Ces nouvelles fonctionnalités permettent des types d'entrée plus spécifiques, tels que le courrier électronique, la date et l'heure, qui peuvent être validés par le navigateur lui-même, réduisant le besoin de JavaScript supplémentaire. Cela conduit à un code plus propre et plus efficace et à une expérience utilisateur plus lisse.
Comment HTML5 améliore l'accessibilité dans le balisage de la forme?
HTML5 fournit plusieurs fonctionnalités qui améliorent l'accessibilité. Par exemple, l'attribut ?requis? peut être utilisé pour s'assurer que les champs essentiels sont remplis. L'attribut ?Planholder? peut fournir des conseils aux utilisateurs sur le type d'informations attendu dans un champ. De plus, l'attribut ?Autofocus? peut automatiquement concentrer le curseur sur un champ de saisie particulier lorsque la page se charge, guidant l'interaction de l'utilisateur avec le formulaire.
Quelles sont les erreurs courantes à éviter lors de l'utilisation de HTML5 pour le balisage du formulaire?
Une erreur courante n'est pas correctement en utilisant les nouveaux types et attributs d'entrée introduits dans HTML5. Par exemple, l'utilisation du mauvais type d'entrée peut entra?ner la soumission de données incorrectes. Une autre erreur n'est pas de fournir des replies adéquates pour les navigateurs plus agés qui ne prennent pas en charge HTML5. Cela peut conduire à une mauvaise expérience utilisateur pour ceux qui utilisent une technologie plus ancienne.
Comment puis-je utiliser HTML5 pour créer des formulaires plus interactifs?
HTML5 introduit plusieurs nouveaux éléments de formulaire qui peuvent être utilisés pour créer plus formes interactives. Par exemple, l'élément ?Datalist? peut être utilisé pour créer une liste déroulante d'options pour un champ de saisie, tandis que les éléments ?progress? et ?compteur? peuvent être utilisés pour représenter visuellement la progression d'une tache ou de la valeur actuelle dans un Plage connue, respectivement.
Comment HTML5 gère la validation du formulaire?
HTML5 introduit la validation de la forme intégrée grace à l'utilisation de certains attributs. Par exemple, l'attribut ?requis? peut être utilisé pour s'assurer qu'un champ n'est pas vide, tandis que l'attribut ?motif? peut être utilisé pour spécifier une expression régulière que la valeur du champ de saisie doit correspondre. Si l'entrée ne répond pas à ces critères, le formulaire ne sera pas soumis et l'utilisateur sera invité à corriger leur entrée.
Quels sont les avantages de l'utilisation d'éléments sémantiques dans HTML5?
Sémantique Les éléments de HTML5 fournissent une indication claire du type de contenu qui y est contenu, ce qui facilite les développeurs et les machines (comme les moteurs de recherche) de comprendre la structure et le contenu d'une page Web. Cela peut améliorer l'optimisation et l'accessibilité des moteurs de recherche.
Comment puis-je m'assurer que mes formulaires HTML5 sont compatibles avec les navigateurs plus anciens?
Bien que HTML5 soit largement pris en charge par les navigateurs modernes, il est important de fournir des secours pour les plus agés navigateurs qui peuvent ne pas prendre en charge toutes les fonctionnalités HTML5. Cela peut être fait en utilisant JavaScript pour détecter si un navigateur prend en charge une fonctionnalité particulière et fournissant une implémentation alternative si ce n'est pas le cas.
Comment puis-je utiliser HTML5 pour améliorer l'expérience mobile de mes formulaires?
HTML5 introduit plusieurs fonctionnalités qui peuvent améliorer l'expérience mobile des formulaires. Par exemple, l'attribut ?Autofocus? peut être utilisé pour concentrer automatiquement le curseur sur un champ de saisie particulier lorsque la page se charge, réduisant le besoin pour les utilisateurs de taper manuellement le champ. De plus, les nouveaux types d'entrée comme ?e-mail? et ?tel? font appara?tre des claviers spécialisés sur les appareils mobiles, ce qui permet aux utilisateurs de saisir plus facilement le type de données correct.
Quelles sont les meilleures pratiques pour structurer un formulaire Web dans html5?
Certaines meilleures pratiques pour structurer un formulaire Web dans HTML5 incluent le regroupement des contr?les de formulaires liés à l'aide de l'élément "Fieldset", fournissant des étiquettes descriptives pour tous les formulaires Contr?les à l'aide de l'élément ?étiquette? et en utilisant l'élément ?Legend? pour fournir une légende pour chaque ?champ de jeu?. De plus, il est important d'utiliser les types et attributs d'entrée appropriés pour garantir la validité des données et améliorer l'expérience utilisateur.
Comment puis-je utiliser CSS pour styliser mes formulaires HTML5?
CSS peut être utilisé pour être utilisé pour styliser HTML5 se forme de diverses manières. Par exemple, vous pouvez utiliser CSS pour modifier la couleur, la taille et la police des éléments de forme, ajouter des bordures et des arrière-plans et appliquer des effets de survol. De plus, CSS peut être utilisé pour contr?ler la disposition des éléments de forme, tels que l'alignement des contr?les et des étiquettes de formulaire, et la création de formes multi-colonnes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

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.

Clothoff.io
Dissolvant de vêtements AI

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

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

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

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Il existe trois fa?ons courantes d'initier des demandes HTTP dans Node.js: utilisez des modules intégrés, Axios et Node-Fetch. 1. Utilisez le module HTTP / HTTPS intégré sans dépendances, ce qui convient aux scénarios de base, mais nécessite un traitement manuel de la couture des données et de la surveillance des erreurs, tels que l'utilisation de https.get () pour obtenir des données ou envoyer des demandes de post via .write (); 2.AXIOS est une bibliothèque tierce basée sur la promesse. Il a une syntaxe concise et des fonctions puissantes, prend en charge l'async / attendre, la conversion JSON automatique, l'intercepteur, etc. Il est recommandé de simplifier les opérations de demande asynchrones; 3.Node-Fetch fournit un style similaire à la récupération du navigateur, basé sur la promesse et la syntaxe simple

Les types de données JavaScript sont divisés en types primitifs et types de référence. Les types primitifs incluent la cha?ne, le nombre, le booléen, le nul, un non défini et le symbole. Les valeurs sont immuables et les copies sont copiées lors de l'attribution des valeurs, de sorte qu'elles ne se affectent pas; Les types de référence tels que les objets, les tableaux et les fonctions stockent les adresses de mémoire, et les variables pointant vers le même objet s'afferchent mutuellement. Le typeof et l'instance de OFF peuvent être utilisés pour déterminer les types, mais prêtent attention aux problèmes historiques de typeofnull. Comprendre ces deux types de différences peut aider à écrire un code plus stable et fiable.

Bonjour, développeurs JavaScript! Bienvenue dans JavaScript News de cette semaine! Cette semaine, nous nous concentrerons sur: le différend de marque d'Oracle avec Deno, les nouveaux objets Time JavaScript sont pris en charge par les navigateurs, les mises à jour Google Chrome et certains outils de développeurs puissants. Commen?ons! Le différend de marque d'Oracle avec la tentative de Deno Oracle d'enregistrer une marque "JavaScript" a provoqué la controverse. Ryan Dahl, le créateur de Node.js et Deno, a déposé une pétition pour annuler la marque, et il pense que JavaScript est un niveau ouvert et ne devrait pas être utilisé par Oracle

Cacheapi est un outil fourni par le navigateur pour mettre en cache les demandes de réseau, qui est souvent utilisée en conjonction avec travailleur de service pour améliorer les performances du site Web et l'expérience hors ligne. 1. Il permet aux développeurs de stocker manuellement des ressources telles que des scripts, des feuilles de style, des photos, etc.; 2. Il peut faire correspondre les réponses du cache en fonction des demandes; 3. Il prend en charge la suppression des caches spécifiques ou la nettoyage du cache entier; 4. Il peut mettre en ?uvre des stratégies de priorité de cache ou de priorité de réseau grace à l'écoute des événements Fetch; 5. Il est souvent utilisé pour le support hors ligne, accélérez la vitesse d'accès répétée, préchargement des ressources clés et du contenu de mise à jour des antécédents; 6. Lorsque vous l'utilisez, vous devez faire attention au contr?le de la version du cache, aux restrictions de stockage et à la différence entre le mécanisme de mise en cache HTTP.

La promesse est le mécanisme central pour gérer les opérations asynchrones en JavaScript. Comprendre les appels de cha?ne, la gestion des erreurs et les combinants est la clé pour ma?triser leurs applications. 1. L'appel de la cha?ne renvoie une nouvelle promesse à travers. Puis () pour réaliser la concaténation des processus asynchrones. Chaque .then () re?oit le résultat précédent et peut renvoyer une valeur ou une promesse; 2. La gestion des erreurs doit utiliser .catch () pour attraper des exceptions pour éviter les défaillances silencieuses, et peut renvoyer la valeur par défaut dans Catch pour continuer le processus; 3. Combinateurs tels que promesse.all () (réussi avec succès uniquement après tout succès), promesse.race () (le premier achèvement est retourné) et promesse.allsetTled () (en attente de toutes les achèvements)

Des méthodes intégrées de la matrice JavaScript telles que .map (), .filter () et .reduce () peuvent simplifier le traitement des données; 1) .map () est utilisé pour convertir les éléments un en un pour générer de nouveaux tableaux; 2) .filter () est utilisé pour filtrer les éléments par condition; 3) .reduce () est utilisé pour agréger les données en tant que valeur unique; Une mauvaise utilisation doit être évitée lorsqu'elle est utilisée, entra?nant des effets secondaires ou des problèmes de performance.

La boucle d'événement de JavaScript gère les opérations asynchrones en coordonnant les piles d'appels, les webapis et les files d'attente de taches. 1. La pile d'appels exécute du code synchrone, et lors de la rencontre de taches asynchrones, il est remis à WebAPI pour le traitement; 2. Une fois que le WebAPI a terminé la tache en arrière-plan, il met le rappel dans la file d'attente correspondante (macro tache ou micro tache); 3. La boucle d'événement vérifie si la pile d'appels est vide. S'il est vide, le rappel est retiré de la file d'attente et poussé dans la pile d'appels pour l'exécution; 4. Micro taches (comme Promise. puis) ??prendre la priorité sur les taches macro (telles que Settimeout); 5. Comprendre la boucle d'événements permet d'éviter de bloquer le thread principal et d'optimiser l'ordre d'exécution du code.

Les bulles d'événements se propagent de l'élément cible vers l'extérieur vers le n?ud d'ancêtre, tandis que la capture d'événements se propage de la couche externe vers l'intérieur vers l'élément cible. 1. événements Bubbles: Après avoir cliqué sur l'élément enfant, l'événement déclenche l'auditeur de l'élément parent vers le haut. Par exemple, après avoir cliqué sur le bouton, il sortira d'abord cliqué sur l'enfant, puis parent. 2. Capture d'événement: définissez le troisième paramètre sur true, afin que l'auditeur soit exécuté dans l'étape de capture, tels que le déclenchement de l'écouteur de capture de l'élément parent avant de cliquer sur le bouton. 3. Les utilisations pratiques incluent la gestion unifiée des événements d'éléments enfants, le prétraitement d'interception et l'optimisation des performances. 4. Le flux d'événements DOM est divisé en trois étapes: capture, cible et bulle, et l'écouteur par défaut est exécuté dans l'étape de la bulle.
