1

コントロールを検証するスクリプトがクライアント側の JavaScript であるカスタム バリデーターがあります。

Web サイトの VB コード ビハインドでは、呼び出しますPage.Validate("groupName")が、検証スクリプトはまったく実行されません。JavaScript にブレーク ポイントを配置しましたが、検証スクリプトに触れていません。カスタム以外のバリデーターで同じ関数を使用すると、機能します。

VB ビハインド コードでクライアント側検証スクリプトを呼び出すことは不可能だと考えていますPage.Validate("groupName")。サーバー側の検証機能は絶対に必要ですか?

ここに少しのコードがあります:

<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:

Protected Sub cbo(ByVal sender As Object, ByVal e As System.EventArgs) Handles cbo.SelectedIndexChanged
    Page.Validate("group1")
End Sub

Page.Validate("group1")が JavaScript 関数を呼び出していません。

4

1 に答える 1

3

Page.Validateサーバー側で検証するために使用されます。クライアント側の検証をトリガーする場合はPage_ClientValidate("group1")、JavaScript コードから関数を呼び出します。

于 2011-01-05T20:10:58.740 に答える