Personnaliser la balise HTML input text
Un objet HTML pour entrer une simple ligne de texte dont la contenu fera partie des données d'un formulaire.
<form name="nomformulaire" action="" method="POST">
<input type="text" name="nomtext" id="idtext" value="" />
</form>
On peut accéder aux attributs de l'objet par l'id ou par la chaîne de noms comme ceci:
document.nomformulaire.nomtext
Les objets input password et textarea sont similaires à input text.
Des balises spécialisées selon les types de données
Password
Il est équivalent à l'objet text avec la différence que le texte assigné à l'attribut value est masqué, et remplacé par des astérisques.
<input type="password" value="">
Son utilisation et son fonctionnement sont les mêmes.
Textarea
Il fonctionne comme text, mais affiche plusieurs lignes et la valeur est contenue entre la balise ouvrante et fermante.
Attributs:
- row
Nombre de lignes visibles. Remplace l'attribut size. - cols
Nombre de caractères par ligne. La largeur en pixels correspond à la largeur moyenne.
Exemple:
<textarea rows="5" cols="40">
Contenu initial.
</textarea>
On peut utiliser textarea tout comme text pour ajouter des données statiques à un formulaire, avec l'attribut readonly.
Comment personnaliser un champ d'entrée de texte
On utilise des gestionnaires d'évènements pour prendre compte les actions de l'utilisateur et CSS pour améliorer l'apparence de l'objet graphique.
Exemple:
Le code HTML:
<form name="nomformulaire" method="post" action="">
<input name="nomtexte" class="textfield" type="text" size="40" maxlength="60"
value="Taper un texte"
onChange="change(this)"
onFocus="getfocus(this)"
onBlur="losefocus(this)" >
<input type="button" value="Effacer" onClick="cleartext()">
</form>
Le code CSS:
.textfield
{
font-family:"Segoe Print", Verdan, Arial;
-moz-border-radius:4px;
border:1px solid gray;
border-radius:4px;
background-image:url(images/papier.jpg);
padding-left:8px;
}
Le code JavaScript:
function cleartext()
{
document.nomformulaire.nomtexte.value="";
}
function change(element)
{
var storage = document.getElementById("storage");
storage.innerHTML += element.name + " change<br>";
}
function getfocus(element)
{
var storage = document.getElementById("storage");
storage.innerHTML += element.name + " en focus<br>";
}
function losefocus(element)
{
var storage = document.getElementById("storage");
storage.innerHTML += element.name + " perd le focus<br>";
}
Voir aussi