Génération du site web de l'ULB - format xml
sommairesommaireindexindexpage précédentepage précédentepage suivantepage suivanteimprimerimprimerenvoyerenvoyermarquermarquer

<input type="text">: zone de saisie de texte sur une seule ligne

Une zone de saisie de texte se définit à l'aide d'un élément <input type="text"> ou plus simplement <input> ("text" est la valeur par défaut).


Exemple de zone de saisie de texte

Entrez vos nom et prénom:

Code de cet exemple
<input type="text">
   <nom>nom</nom>
   <libellé>entrez vos nom et prénom</libellé>
</input>

Contenu de l'élément <input type="text">

L'élément <input type="text"> (ou <input>) peut posséder les sous-éléments suivants (ils ne sont pas obligatoires):

<nom>

donne le nom du paramètre à envoyer avec les données du formulaire ou à utiliser dans le reste de la page

<libellé>

donne le libellé à afficher dans le formulaire. Il sera visible par l'utilisateur, mais ne sera pas envoyé avec les données du formulaire

<valeur>

donne la valeur par défaut à afficher dans la zone de saisie de texte

<p>

permet d'ajouter un commentaire en dessous de la zone de saisie de texte

<taille>

permet d'indiquer la taille que devra prendre la zone de saisie de texte

<obligatoire/>

impose à l'utilisateur d'entrer une valeur dans la zone de saisie de texte

<maxlen>

impose à l'utilisateur un nombre maximum de caractères

<format/>

impose un format aux données entrées dans la zone de saisie de texte (valeur entière, valeur décimale...)

<trim/>

afin de supprimer les espaces au début et à la fin de la valeur entrée dans la zone de saisie de texte

<normalisation/>

idem que <trim/ mais remplace également toute suite d'espaces, de tabulations et de retour à ligne par une seule espace

<majuscule/>

force la valeur entrée dans la zone de saisie de texte en majuscule

<minuscule/>

force la valeur entrée dans la zone de saisie de texte en minuscule

<Minuscule/>

idem que <minuscule/>, mais force la première lettre en majuscule

Ces sous-éléments peuvent être complétés par tous les éléments communs aux blocs, une question dans un formulaire étant considérée comme un bloc. Ceux-ci permettent de mettre en page la zone de saisie de texte.


L'élément <input type="text"> peut posséder les attributs suivants (ils ne sont pas obligatoires):

envoyer="..."

précise s'il faut envoyer ou non un paramètre à l'application distante

Ces attributs peuvent être complétés par tous les attributs communs aux blocs, une question dans un formulaire étant considérée comme un bloc. Ceux-ci permettent de mettre en page la zone de saisie de texte.


Il est également possible d'utiliser les synonymes suivants:

<name>

synonyme de <nom>

<label>

synonyme de <libellé>

<title>

synonyme de <libellé>

<value>

synonyme de <valeur>

<size>

synonyme de <taille>

<mandatory/>

synonyme de <obligatoire/>

<normalize/>

synonyme de <normalisation/>

<uppercase/>

synonyme de <majuscule/>

<lowercase/>

synonyme de <minuscule/>

<Lowercase/>

synonyme de <Minuscule/>


Dans cet exemple, le titre "Entrez vos nom et prénom:" sera affiché en regard d'une zone de saisie de texte. Un paramètre nom sera envoyé à l'application distante lors de l'envoi du formulaire.

Remarque: comme le montre cet exemple, la première lettre du libellé est forcée en majuscule et un : lui est automatiquement ajouté.

Exemple
<input type="text">
   <nom>nom</nom>
   <libellé>entrez vos nom et prénom</libellé>
</input>

Entrez vos nom et prénom:


Dans cet autre exemple, une valeur par défaut est ajoutée, ainsi qu'un commentaire. Le champ est également rendu obligatoire par la présence de l'élément <obligatoire/>

Exemple
<input type="text">
   <nom>email</nom>
   <libellé>Courrier électronique</libellé>
   <valeur>Séraphin.Lampion@ulb.be</valeur>
   <obligatoire/>
   <p>Entrez une adresse de courrier électronique valable. 
      Elle sera utilisée pour vous envoyer vos résultats.</p>
</input>

Courrier électronique:

Entrez une adresse de courrier électronique valable. Elle sera utilisée pour vous envoyer vos résultats.


Valeur par défaut à afficher dans la zone

La valeur par défaut qui s'affichera lorsque la page est chargée dans le navigateur se définit à l'aide d'un élément <valeur> (ou <value>). Si celui-ci n'est pas présent, la zone sera vide.

Exemple
<input type="text">
   <nom>nom</nom>
   <libellé>nom et prénom</libellé>
   <valeur>Séraphin Lampion</valeur>
</input>

Nom et prénom:


Modification de l'apparence de la zone de saisie de texte

Style de la zone de saisie de texte

Une zone de saisie est considérée comme un bloc. Tous les attributs (style, bords et ses variantes) définis pour les blocs peuvent être utilisés (l'élément <titre>, ici, n'a pas lieu d'être).

Si vous n'utilisez pas d'attribut style, la zone sera affiché sans mise en page particulière (identique à style="transparent"). Dans le cas contraire c'est un bloc dont la mise en page est définie par cet attribut style qui sera affiché.

Exemple
<formulaire>
   <input type="text" style="voile" bords="arrondis">
      <nom>nom</nom>
      <libellé>votre nom</libellé>
   </input>
   <input type="text" style="voile" bords="arrondis">
      <nom>prenom</nom>
      <libellé>votre prénom</libellé>
   </input>
</formulaire>

Votre nom:

Votre prénom:

Taille de la zone de saisie de texte

La taille de la zone est paramétrable à l'aide d'un élément <taille> (ou <size>) qui donne le nombre maximal de caractères qui seront visibles (sans utiliser le curseur) dans la zone (ce nombre est parfois approximatif).

Exemple
<input type="text">
   <nom>nom</nom>
   <libellé>matricule</libellé>
   <taille>6</taille>
</input>

<input type="text">
   <nom>nom</nom>
   <libellé>nom et prénom</libellé>
   <taille>20</taille>
</input>

<input type="text">
   <nom>nom</nom>
   <libellé>email</libellé>
   <taille>64</taille>
</input>

Matricule:

Nom et prénom:

Email:


Contrôle de la valeur entrée dans la zone de saisie de texte

Limitation du nombre de caractères à saisir

Le nombre maximal de caractères accepté dans cette zone est paramétrable grâce à un élément <maxlen>.

Exemple
<input type="text">
   <nom>matricule</nom>
   <libellé>Entrez votre matricule (9 caractères)</libellé>
   <maxlen>9</maxlen>
</input>

Entrez votre matricule (9 caractères):

Rendre la zone obligatoire

Un élément <obligatoire/> (ou <mandatory/> qui est un synonyme) permet de rendre la zone de saisie de texte obligatoire (au moins un caractère doit avoit été entré dans la zone avant de pouvoir soumettre le formulaire).

Exemple
<input type="text">
   <nom>matricule</nom>
   <libellé>Entrez votre matricule (9 caractères)</libellé>
   <obligatoire/>
</input>

Entrez votre matricule (9 caractères):


Forcer en majuscules

Un élément <majuscule/> (ou <uppercase/> qui est un synonyme) permet de forcer la valeur en majuscules au moment de l'envoi.

Exemple
<input type="text">
   <nom>nom</nom>
   <libellé>Entrez votre nom</libellé>
   <valeur>dupont</valeur>
   <majuscule/>
</input>

Entrez votre nom:


Forcer en minuscules

Un élément <minuscule/> (ou <lowercase/> qui est un synonyme) permet de forcer la valeur en minuscules au moment de l'envoi.

Exemple
<input type="text">
   <nom>nom</nom>
   <libellé>Entrez votre nom</libellé>
   <valeur>dupont</valeur>
   <minuscule/>
</input>

Entrez votre nom:


Forcer en minuscules sauf la première lettre

Un élément <Minuscule/> (ou <Lowercase/> qui est un synonyme) permet de forcer la valeur en minuscules, excepté la première lettre qui sera en majuscule, au moment de l'envoi.

Exemple
<input type="text">
   <nom>nom</nom>
   <libellé>Entrez votre nom</libellé>
   <valeur>dupont</valeur>
   <Minuscule/>
</input>

Entrez votre nom:


Supprimer les espaces

Un élément <trim/> permet de supprimer, au moment de l'envoi, les espaces et les tabulations au début et à la fin de la valeur entrée dans la zone de texte.

Exemple
<input type="text">
   <nom>nom</nom>
   <libellé>Entrez votre nom</libellé>
   <valeur>   dupont   </valeur>
   <trim/>				
</input>

Entrez votre nom:


Un élément <normalisation/> (ou <normalize/>) agit comme un <trim/>, mais il remplace également toute suite d'espaces, de tabulations et de retours à la ligne par une seule espace.

Exemple
<input type="text">
   <nom>nom</nom>
   <libellé>Entrez votre nom</libellé>
   <valeur>   du   	 pont   </valeur>
   <normalisation/>				
</input>

Entrez votre nom:


Imposer un format à la valeur entrée dans la zone

Un élément <format/> permet d'imposer un format aux données entrée dans la zone de texte. Plusieurs types de format sont possibles, sélectionnables à l'aide d'un attribut type. Cet attribut peut valoir:

  • type="entier": impose le format d'un nombre entier (positif ou négatif);

  • type="integer": synonyme de "entier";

  • type="décimal": impose le format d'un nombre décimale (positif ou négatif avec, éventuellement, une partie décimale derrière la virgule. Celle-ci, comme souvent en informatique, s'écrit avec un '.');

  • type="decimal": synonyme de "décimal";

Dans les quatres cas, un attribut minimum et un attribut maximum peuvent imposer une valeur minimale et une valeur maximale (ces deux valeurs étant comprises).

Exemple
<input type="text">
   <nom>quantity</nom>
   <libellé>Entrez votre nom</libellé>
   <valeur>365</valeur>
   <trim/>
   <format type="integer"/>				
</input>

Quantité:


Dans cet exemple, on accepte un entier non négatif (valeur minimale égale à 0):

Exemple
<input type="text">
   <nom>age</nom>
   <libellé>Donnez votre age</libellé>
   <trim/>
   <format type="integer" minimum="0"/>				
</input>

Donnez votre age:


Dans cet autre exemple, on accepte une valeur décimale comprise entre -100 et +100

Exemple
<input type="text">
   <nom>temp</nom>
   <libellé>Température</libellé>
   <valeur>38.5</valeur>
   <trim/>
   <format type="décimal" minimum="-100" maximum="+100"/>				
</input>

Température:

ULB - entreprise écodynamique