ASP:REQUIREDFIELDVALIDATOR |
ASP : Validateur de champ requis |
|---|---|
| ASP.NET | |
Syntaxe
|
<asp:RequiredFieldValidator paramètres /> |
Paramètres
| Paramètre | Description | ||
|---|---|---|---|
| controltovalidate=valeur | Ce paramètre permet d'indiquer le contrôle pour la validation. | ||
| errormessage=valeur | Ce paramètre permet d'indiquer le message d'erreur à afficher si l'utilisateur n'a pas correctement répondu à une validation. | ||
| ID=valeur | Ce paramètre permet d'indiquer l'identificateur de la balise. | ||
| runat=valeur | Ce paramètre permet d'indiquer où doit être exécuté la balise : | ||
| Constante | Description | ||
| "server" | Cette constante permet d'indiquer qu'il faut exécuter la balise du côté serveur. | ||
| ... | ... | ||
Description
Cette balise permet de définir un contrôle vérifiant si l'utilisateur à entrée des données dans un champs.
Remarques
- Le contrôle <asp:RequiredFieldValidator> est utilisé pour s'assurer qu'un champ de saisie n'est pas laissé vide par l'utilisateur. Il s'agit d'une validation essentielle pour éviter des soumissions de formulaires incomplètes ou incohérentes.
- Ce validateur fonctionne en spécifiant la propriété ControlToValidate, qui pointe vers l'identifiant du champ de formulaire à vérifier. Sans cette propriété, le validateur ne saura pas quel champ surveiller.
- Le paramètre ErrorMessage permet de définir le message à afficher en cas d'erreur. Ce message peut être personnalisé pour correspondre au style ou au ton de l'application.
- Le contrôle fonctionne aussi bien côté client (via JavaScript) que côté serveur. Cela améliore la performance en évitant des allers-retours inutiles entre le client et le serveur, tout en garantissant une double sécurité.
- Le validateur peut être combiné avec d'autres validateurs ASP.NET, comme CompareValidator, RangeValidator, ou RegularExpressionValidator, afin d'appliquer plusieurs types de règles sur un même champ.
- Il est essentiel que la propriété runat="server" soit présente pour que le validateur soit interprété comme un contrôle serveur ASP.NET. Sans cela, il ne sera pas pris en compte.
- Le contrôle peut être associé à un ValidationSummary pour afficher tous les messages d'erreur en un seul endroit, ce qui améliore l'expérience utilisateur en centralisant les feedbacks.
- Le RequiredFieldValidator permet d'empêcher les envois de formulaires même si le champ visé ne contient que des espaces. Il considère en effet une chaîne vide ou blanche comme invalide.
- La propriété Text permet d'afficher un message bref (souvent une astérisque) à côté du champ, tout en réservant ErrorMessage à une explication plus longue affichée ailleurs.
- Le validateur peut être activé ou désactivé dynamiquement en définissant sa propriété Enabled. Cela est utile dans des formulaires contextuels ou adaptatifs, où certains champs ne deviennent obligatoires que sous certaines conditions.
- La propriété Display permet de contrôler l'affichage du message d'erreur. Elle peut prendre les valeurs Static, Dynamic, ou None, influençant la manière dont l'espace est réservé dans la page.
- En cas d'utilisation dans des pages multilingues, les messages d'erreur peuvent être extraits de fichiers de ressources pour faciliter la traduction et la maintenance.
- Lorsqu'un bouton de type submit est cliqué, ASP.NET vérifie automatiquement l'état des validateurs présents dans la page. Si au moins un d'entre eux échoue, l'envoi est bloqué.
- Le RequiredFieldValidator est souvent utilisé avec les champs de type TextBox, mais il peut aussi valider d'autres contrôles comme des listes déroulantes (DropDownList) en s'assurant qu'un élément non vide est sélectionné.
- Il est aussi possible d'utiliser le ValidationGroup pour grouper plusieurs validateurs et champs. Cela permet de contrôler des validations ciblées selon différents boutons ou sections d'un même formulaire.
Exemple
Voici un exemple permettant d'obliger d'entrer le prénom :
- <%@ Page Language="vb" %>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <body>
- <form id="MonFormulaire" runat="server">
- Votre prenom : <asp:TextBox runat="server" id="Prenom" />
- <asp:RequiredFieldValidator runat="server" id="reqName" controltovalidate="Prenom" errormessage="SVP entrez votre prenom !" />
- <br /><br />
- <asp:Button runat="server" id="btnSubmitForm" text="Soumettre" />
- </form>
- </body>
- </html>
on obtiendra le résultat semblable suivant :
Voir également
Articles - Les géants de l'informatique - Microsoft
Dernière mise à jour : Samedi, le 31 août 2017