Manual:HTMLForm Tutorial 3/fr

Il est possible de générer n'importe quel type de champ avec HTMLForm; les options spécifiques à chaque champ sont décrites ici. Les options génériques (celles qui se rapportent à tous les champs) sont décrites dans le Tutoriel 2.

Introduction
Dans $formDescriptor, il existe deux manières de déclarer un type de champ : par la class ou par le type.



Utiliser l'attribut class
Vous pouvez d'abord initialiser l'attribut class (ne mélangez ni ne confondez pas avec cssclass)


 * HTMLTextField: Un champ texte simple.
 * HTMLFloatField: Un champ texte simple avec un nombre flottant validé
 * HTMLIntField: Un champ texte simple avec un nombre entier validé
 * HTMLUserTextField: Un champ texte simple pour les noms d'utilisateur
 * HTMLTextAreaField: Un champ texte étendu
 * HTMLSelectField: Un menu déroulant vers le bas
 * HTMLSelectOrOtherField: Un menu déroulant vers le bas avec une option 'autre' contrôlant un champ texte simple
 * HTMLSelectAndOtherField: Un menu déroulant vers le bas et un champ texte simple
 * HTMLMultiSelectField: Liste de cases à cocher
 * HTMLRadioField: Boutons radio
 * HTMLCheckField: Case à cocher unique
 * HTMLCheckMatrix: Matrice à deux dimensions de cases à cocher
 * HTMLInfoField: Simplement du texte sans entrée possible
 * HTMLSubmitField: Bouton submit supplémentaire (HTMLForm affiche toujours un bouton par défaut)
 * HTMLHiddenField: Champ caché (données à ne pas envoyer; elles ne sont pas affichées ni modifiées)
 * HTMLTagFilter: Filtre de balises
 * HTMLSizeFilterField: Filtre de la taille du fichier
 * HTMLUsersMultiselectField: Selectionner plusieurs utilisateurs
 * HTMLTitleTextField: Boîte de texte pour récupérer le nom de la page
 * HTMLDateTimeField: Sélecteur de date et d'heure



Utiliser l'attribut type
Dans la partie précédente nous avons utilisé class; ici nous allons utiliser type qui est un raccourci de class, mais class a la priorité. C'est pourquoi vous ne devez jamais utiliser les deux en même temps !


 * text: HTMLTextField
 * password: HTMLTextField
 * textarea: HTMLTextAreaField
 * select: HTMLSelectField
 * radio: HTMLRadioField
 * multiselect: HTMLMultiSelectField
 * check: HTMLCheckField
 * checkmatrix: HTMLCheckMatrix
 * int: HTMLIntField
 * float: HTMLFloatField
 * info: HTMLInfoField
 * selectorother: HTMLSelectOrOtherField
 * selectandother: HTMLSelectAndOtherField
 * submit: HTMLSubmitField
 * hidden: HTMLHiddenField
 * tagfilter: HTMLTagFilter
 * sizefilter: HTMLSizeFilterField
 * user: HTMLUserTextField
 * usersmultiselect: HTMLUsersMultiselectField
 * url: HTMLTextField
 * title: HTMLTitleTextField
 * date: HTMLDateTimeField
 * time: HTMLDateTimeField
 * datetime: HTMLDateTimeField
 * limitselect: HTMLSelectField
 * email: HTMLTextField (pour la validation HTML5 côté client; il n'y a pas de validation côté serveur ici!)
 * toggle: HTMLCheckField similaire à check, mais avec l'utilisation de , l'état par défaut peut être vérifié
 * edittools: HTMLEditTools insère unn message système, un contenu analysé de MediaWiki:Edittools

Ce que l'on peut réaliser :


Le code suivant construit ce formulaire :

text
Un simple texte appelé 'text' :

password
Un champ texte affiché comme un champ de mot de passe appelé 'password' :

float
Un champ texte validé seulement pour des nombres flottants appelé 'float' :

int
Un champ texte validé uniquement pour des entiers appelé 'int' :

textarea
Un champ texte étendu appelé 'textarea' :

select
Un menu déroulant vers le bas appelé 'select' :

selectorother
Un menu déroulant vers le bas avec une option 'autre' qui gère un champ texte simple appelé 'selectorother' :

selectandother
Un menu déroulant vers le bas et un champ texte simple appelé 'selectandother' :

multiselect
Ensemble de plusieurs cases à cocher appelé 'multiselect' :

radio
Champ de boutons radio appelé 'radio' :

check
Champ avec un case à cocher appelé 'mycheck' :

checkmatrix
Une matrice à deux dimensions de cases à cocher appelée 'checkmatrix' :

info
Simple chaîne textuelle (n'est pas réellement une entrée) appelée 'info':

submit
Un bouton submit appelé 'submit'. Par défaut, il en existe déjà un à la fin du formulaire; celui-ci est un bouton supplémentaire :

hidden
Une entrée de texte caché appelée 'hidden' :

Vous pouvez aussi utiliser pour accomplir le même travail.

tagfilter
Filtre sur les balises. Voir la liste des balises sur Special:Tags.

sizefilter


Filtre sur la taille. Voir les exemples sur Special:NewPages.

user


Boîte de texte qui prend en entrée des noms d'utilisateurs existants localement.

usersmultiselect


Permet de sélectionner plusieurs utilisateurs. Voir l'exemple dans les préférences utilisateur.

url


Boîte de texte qui prend en entrée une URL web (http:// ou https://).

title


Boîte de texte avec auto-complétion, qui prend en entrée le titre d'une page wiki.

date


Sélecteur automatique de date qui prend une date en entrée.

time


Sélecteur automatique de référence horaire qui prend l'heure en entrée.

datetime


Sélecteur automatique de date et de référence horaire qui prend la date et l'heure en entrée.

email


Boîte de texte qui prend une adresse courriel (abc@g.com) en entrée.

limitselect


Taille limite d'une boîte déroulante de sélection de menu.