当ASP.NET客户端验证失败时,如何隐藏throbber?

时间:2010-01-02 20:38:30

标签: asp.net jquery throbber

我正在使用ASP.NET登录控件,并且在单击提交按钮时显示jQuery throbber。这样可以正常工作,但如果客户端验证失败并且按钮不可见,则可以看到触发器,因此用户无法重新提交表单。如果客户端验证失败,我该如何隐藏悸动?

2 个答案:

答案 0 :(得分:1)

在不了解细节的情况下......为什么不在客户端验证传递时启动throbber?作为用户,我会惊讶地看到UI元素非常暂时闪烁,只是被删除并被错误消息替换。

答案 1 :(得分:1)

这有点棘手,但我得到了这个工作。首先,Login控件必须是模板化的,这是我所期望的,但即使如此,按钮的ClientID也是不可访问的,所以我不得不为它添加一个类选择器。我首先尝试添加throbber,如果使用轻微/未记录的Page_ClientValidate()事件验证成功,则将其打开,但这不起作用,因为默认情况下,throbber订阅按钮的click事件并在验证发生之前打开。

如果Page_IsValid为true,那么有什么工作坚持mini API并将按钮添加到按钮。按钮的CausesValidation属性必须为true(默认值)。

的javascript:

    $(document).ready(function() {
        $('.login').click(function() {
            if (Page_IsValid) {
                $('.login').throbber({ image: "Images/throbber.gif" });
            }
        });
    });

按钮标记; Login控件模板中唯一添加的是CssClass属性:

<asp:Button ID="LoginButton" runat="server" CommandName="Login" Text="Log In" ValidationGroup="uxLogin" CssClass="login" />