2017-08-06 1 views
0

J'utilise Web Forms Validators pour empêcher l'utilisateur de laisser des entrées vides, mais dans mon formulaire, certaines entrées peuvent être désactivées dans certaines circonstances et doivent désactiver la validation de cette zone de texte et de ces listes déroulantes.J'utilise JQuery et supprime certains attributs désactiver les validations, par exemple:Activer/Désactiver le validateur Web ASP.NET requis pour les entrées désactivées à l'aide de JQuery?

Disable

$("#VDrpLeaveKind").css("visibility", "hidden").attr("data-val-enabled", false); 

Activer

$("VDrpLeaveKind").removeAttr("data-val-enabled").css("visibility", "visible"); 

Il fonctionne lorsque l'entrée est désactivée, mais après avoir cliqué sur le bouton d'envoi, le message d'erreur de validation apparaîtra à nouveau. Il y a un code de validation:

<span data-val-controltovalidate="DrpLeaveKind" data-val-errormessage="error message" data-val-validationgroup="vacation" id="VDrpLeaveKind" data-val="true" data-val-evaluationfunction="RequiredFieldValidatorEvaluateIsValid" data-val-initialvalue="0" style="color:Red;font-size:Smaller;visibility:hidden;">error message</span> 

j'essayer d'autres moyens tels que le changement ValidationGroup, ou utilisez Causevalidation mais rien. Si d'autres informations sont nécessaires, veuillez m'en informer. Merci d'avance.

Répondre

1

Si vous souhaitez activer/désactiver une clientside validateur, vous voulez appeler ValidatorEnable et passer le contrôle de validateur et un booléen pour activer/désactiver:

ValidatorEnable(requiredFieldValidator, false); 

Référence link.

+0

Cela fonctionne pour moi, mais le JavaScript Intellisense ne contient pas _ValidatorEnable_. –

+0

La meilleure option est de désactiver l'utilisation des validations 'ValidatorEnable (requiredFieldValidator, false);' et d'activer l'utilisation '$ (" Input ") [0] .enabled = true;' –