1

Web フォームで ASP.NET と jQuery の両方を使用すると問題が発生します。

現在、ASP.NET クライアント側の検証を使用するマルチ div 登録がありますが、jQuery アニメーションをステップからステップへと移動させたいと考えています。

<asp:ImageButton ID="NextButton" runat="server" ImageUrl="images/registration/arrowright.png" Height="50px" onmouseover="this.src='images/registration/arrowrightgreen.png'"  onmouseout="this.src='images/registration/arrowright.png'" ValidationGroup="UserInformation" OnClientClick="onNextClick()"/>

また、登録の次のステップに進む jQuery 関数もあります。

<script type="text/javascript">
    $(document).ready(function () {
        $("[id$=pick_user_type]").hide();
    });

    function onNextClick() {
        $("[id$=registration_div]").hide('slide', { direction: 'left' }, 1000);
        $("[id$=pick_user_type]").show('slide', { direction: 'right' }, 1000);
    }
</script>

問題は、フォームが無効であっても jQuery が先に進み、アニメーションを実行することです。それ以外の方法でjQueryと通信できる方法はありますか? Page.Validate()私が読んだことによると、無効化されたフィールドがある場合、ASP.NET バリデーターはメソッドに false を返します。jQuery 検証に移行する必要がありますか?

4

3 に答える 3

1

さて、私はちょうど答えを見つけたようです。これは、ValidationGroup「UserInformation」で機能します

if (Page_ClientValidate("UserInformation")) {
    $("[id$=registration_div]").hide('slide', { direction: 'left' }, 1000);
    $("[id$=pick_user_type]").show('slide', { direction: 'right' }, 1000);
}
于 2013-08-28T01:44:01.987 に答える
0

次のように、コントロールの検証とその表示の更新を強制できます。

ValidatorValidate($('<%= myValidator.ClientID %>'));

クライアント側 API とクライアント側オブジェクトの詳細については、ASP.NET の詳細な検証を参照してください。

于 2013-08-28T01:47:18.787 に答える