在运行javascript之前测试页面是否有效

时间:2013-04-18 13:10:52

标签: javascript asp.net validation

我有一些javascript在按下提交按钮时“冻结”屏幕。这是为了阻止双重答题。

我发现如果验证器控件返回false会出现问题,因为屏幕已经“冻结”,因此用户无法解决输入数据的问题。

我需要能够判断页面是否有效,如果不是,我可以取消冻结屏幕。

我该怎么做?

冻结屏幕的javascript代码...(最初来自4guysfromrolla)

function FreezeScreen(msg) {
var outerPane = document.getElementById('FreezePane');
var innerPane = document.getElementById('InnerFreezePane');
if (outerPane) outerPane.className = 'FreezePaneOn';
}

运行javascript的代码......

<asp:Button ID="btnSubmit" runat="server" Text="<%$ Resources:LocalizedText, button_SubmitOrder %>" onclick="btnSubmit_Click" ValidationGroup="validateHeader" OnClientClick="FreezeScreen();" />

1 个答案:

答案 0 :(得分:0)

可能会是这样的。

function ValidatePage() {
    FreezeScreen();

    if (typeof (Page_ClientValidate) == 'function') {
        Page_ClientValidate();
    }

    if (Page_IsValid) {
        UnFreezeScreen();
        return true;
    }
    else {
        UnFreezeScreen();
        return false;
    }
}

按钮

<asp:Button ID="btnSubmit" runat="server" Text="<%$ Resources:LocalizedText, button_SubmitOrder %>" onclick="btnSubmit_Click" ValidationGroup="validateHeader" OnClientClick="return ValidatePage();" />