J'ai un validateur personnalisé dans lequel le script validant le contrôle est JavaScript côté client.Les validateurs personnalisés ASP.NET - Page.Validate ("groupName") ne se déclenchent pas?
Dans mon code VB derrière pour le site Web, j'appelle le Page.Validate("groupName")
mais mon script de validation n'est pas déclenché du tout. J'ai placé un point de rupture dans mon JavaScript, mais cela ne touche même pas mon script de validation. Alors que lorsque j'utilise la même fonction sur des validateurs non personnalisés, cela fonctionne.
Je pense qu'il est impossible d'appeler mon script de validation côté client dans mon VB derrière le code via Page.Validate("groupName")
. Ai-je absolument besoin d'une fonction de validation côté serveur?
est ici un peu de code:
<asp:CustomValidator ID="ValidateTxt" runat="server"
ClientValidationFunction="validateTxt"
ControlToValidate="txtBox"
Display="Dynamic"
ValidationGroup="group1">
</asp:CustomValidator>
<script type="text/javascript" language="javascript" >
function validateFinHeight(source, arguments)
{
if(arguments.Value % 2 == 0){
arguments.IsValid = true;
}
}
</script>
VB Derrière le code:
Protected Sub cbo(ByVal sender As Object, ByVal e As System.EventArgs) Handles cbo.SelectedIndexChanged
Page.Validate("group1")
End Sub
Le Page.Validate("group1")
n'appelle pas ma fonction JavaScript.
Oui, vous avez absolument besoin d'une validation côté serveur car un utilisateur peut ignorer vos vérifications javascript et soumettre ce qu'il souhaite à votre formulaire. La seule façon d'être sûr est de vérifier sur le serveur. – Greg
Je ne suis pas inquiet au sujet du contournement des utilisateurs car il s'agit d'une application web simple qui ne sera utilisée que par 3-4 personnes dans l'entreprise où je travaille. Ce ne sera pas ouvert au public où les gens vont essayer des trucs sales comme ça. – Johnrad