2010-02-22 6 views
1

Im utilisant régulière asp.net C# (webforms)Comment valider un formulaire sans JavaScript?

J'ai besoin de construire un formulaire simple qui a une validation simple. Je dois m'assurer que le formulaire fonctionne correctement même si javascripts est désactivé. Page.IsValid sera-t-il suffisant pour cela, ou y a-t-il autre chose que je devrais considérer?

grâce

Répondre

5

Utilisez les validateurs ASP.NET par défaut en association avec Page.IsValid. Ils valident côté serveur côté client et.

Si Javascript est désactivé, ils valideront toujours côté serveur.

+1

Je suis d'accord. Je voudrais cependant construire une approche qui essaie de côté client si Javascript est disponible en utilisant ces mêmes contrôles par défaut. Il est toujours préférable de faire une validation aussi proche de l'utilisateur que possible. –

+0

@Nissan Fan: Oh, définitivement. La validation côté client fournit moins d'allers-retours au serveur pour validation, et une expérience globale plus utilisable. Mais rappelez-vous, @sneg est 100% correct: vous devez * valider * côté serveur, même si vous validez le côté client. – Randolpho

+1

+1: En fait, j'ai dû montrer à certains des principaux développeurs où je travaillais que les valideurs ASP.NET effectuaient toujours la validation côté serveur, même si je désactivais les scripts côté client. – Powerlord

0

Tant que vous avez les contrôles de validation nécessaires sur la page alors même si javascript est désactivé au niveau du client, ASP.Net devraient faire la validation côté serveur sur les données et renvoyer une erreur.

0

Considérez également utiliser <asp:RequiredFieldValidator> (et related tags) si quelque chose dans le formulaire a des exigences particulières, telles que la vérification des champs ne sont pas vides ou la vérification qu'une adresse e-mail ressemble à une adresse e-mail.

5

La validation côté client est facultative, la validation côté serveur est obligatoire.

+0

Vous devez toujours valider le côté serveur, en particulier si des informations sont envoyées à une base de données. – Alex

1

La validation de formulaire est le processus consistant à confirmer que les données qu'un utilisateur entre dans un champ de formulaire remplissent une ou plusieurs règles que vous avez définies. Actuellement, la seule façon d'y parvenir est d'utiliser un langage impératif tel que JavaScript côté client ou un autre langage (par exemple C#) côté serveur. Les futures versions de HTML peuvent inclure des options pour les solutions déclaratives ... mais ne vous inquiétez pas à ce sujet.

Si JavaScript est désactivé du côté client, la seule option consiste à effectuer une validation côté serveur. Cela signifie que le contenu du formulaire est soumis au serveur; Si la validation échoue, le serveur répondra avec le formulaire d'origine, de préférence avec le contenu de l'utilisateur en place et une indication de ce qui a échoué.

La validation côté serveur peut fonctionner comme une dégradation progressive. Implémentez d'abord la validation côté serveur, puis ajoutez la validation côté client en tant que couche.

Questions connexes