我有一些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();" />
答案 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();" />