2009-10-26 4 views
0

J'ai une page qui charge différents contrôles dans un espace réservé via un rappel ComponentArt basé sur l'action de l'utilisateur (en cliquant sur un lien).Suppression des validateurs ASP.NET pour les contrôles qui ne sont plus sur la page

Je suis en cours d'exécution à ce scénario:

  • action 1 charge un contrôle avec ASP.NET validateurs dans l'espace réservé.
  • L'action 2 charge un contrôle différent sans validateurs (le premier contrôle est remplacé et n'est plus sur la page).
  • La soumission de la page entraîne une erreur de javascript puisque les objets javascript du validateur sont toujours sur la page mais que les contrôles qu'ils valident ne le sont pas.

Quelqu'un a-t-il rencontré ce problème ou a-t-il des idées sur la façon de le résoudre?

+0

avez-vous essayé de définir Enable = false sur votre contrôle de validation? – tanathos

+0

Eh bien, j'ai besoin que le validateur soit activé quand le contrôle est là, mais une fois que le contrôle a été remplacé, je n'ai pas un moyen facile d'y accéder - il me manque peut-être quelque chose. –

Répondre

0

Cela ressemble à un bug avec Action 2 ... comment le contrôle original est-il supprimé? Soit le validateur doit également être explicitement supprimé, soit (est-ce un contrôle?) La façon dont le contrôle est supprimé est incorrecte. Je ne sais pas ce que vous entendez par "rappel" dans ce contexte. Est-ce le code AJAX? Ou est-ce qu'un postback se passe?

+0

Le rappel est le nom d'un contrôle tiers fourni par ComponentArt. Il vous permet de faire une certaine logique côté serveur et de rendre les résultats à la page sans effectuer une publication complète de la page. Dans ce cas, nous rendons différents contrôles à la zone de contenu du rappel en fonction de l'action de l'utilisateur. Si plus d'une action se produit, le premier contrôle est supprimé (l'écrasement est probablement un meilleur mot), mais le javascript généré pour ses validateurs ASP est toujours sur la page. –

+0

Dans ce cas, le mieux est probablement de changer le validateur en un validateur personnalisé qui gère ce cas. – Bryan

Questions connexes