2010-07-21 2 views
3

Je comprends qu'il peut ne pas être possible de découpler le côté client du code côté serveur dans les formulaires Web ASP.NET. Quelles mesures peuvent être prises pour produire un site Web conforme à ces normes Web?Quelles mesures peuvent être prises pour produire une sortie côté client, sémantique, accessible et conforme aux normes avec les formulaires Web ASP.NET?

Je suis particulièrement soucieux de rendre le site accessible avec JavaScript désactivé, et conforme à WCAG2 au niveau de conformité AA.

Est-il possible de séparer le contenu (HTML), la présentation (CSS) et le comportement (JavaScript)?

Répondre

2

Il est possible, mais ce n'est pas facile dans ASP.Net WebForms:

  1. Les nouvelles versions de ASP.Net sont plus conformes à la norme que les anciens. Donc, utilisez la version ASP.Net la plus récente possible. ASP.Net 4 a quelques fonctionnalités intéressantes pour rendre le balisage HTML plus propre (voir blog post pour les détails)
  2. Si vous n'êtes toujours pas satisfait du code, généré par certains des contrôles standard, recherchez leurs équivalents tiers. Il y a de bonnes chances que vous trouviez des contrôles open-source ou commerciaux, générant du code beaucoup plus propre que les contrôles par défaut.
  3. Si vous n'êtes toujours pas satisfait de certains contrôles tiers, écrivez vos contrôles personnalisés et remplissez-les avec du code conforme aux standards.
0

Si vous n'êtes pas vraiment fan de ASP.NET, vous pouvez également essayer ASP.NET MVC. MVC a de nombreuses similitudes avec ASP.NET. Mais la meilleure partie est que vous avez un contrôle total sur la sortie HTML qui est rendue au navigateur. Si vous n'avez pas la possibilité de choisir MVC et que la sortie par défaut du contrôle serveur ASP.NET ne vous convient pas, vous pouvez survoler la méthode Render du contrôle serveur ASP.NET. Veuillez vous référer au Rendering an ASP.NET Server Control.

Vous pouvez également remplacer la sortie des contrôles enfants s'il s'agit d'un contrôle composite tel que DataGrid.

Espérons que cela aide.

+0

était là une raison que vous avez publié un lien .NET 1.1? –

+0

@John, je n'avais aucune raison particulière. Je voulais juste montrer un lien qui montre comment cela peut être fait. –

+0

c'est bien, mais si vous postez un lien. NET 1.1, le lecteur le suivra à plus de liens .NET 1.1, ce qui conduira à plus de liens .NET 1.1 - le lecteur sera bloqué dans un labyrinthe de documentation à partir de 2003. –

1

Vous pouvez hériter et remplacer la méthode Render, mais pour les contrôles plus complexes, vous n'aurez probablement pas envie de placer le moment où de meilleures alternatives existent.

Questions connexes