我的asp.net页面出现问题,即使用户间歇性地输入数据,也会显示会话超时警告。我们在主页面中设置会话超时警告作为公司政策:
var sessionTimeoutWarning = 45;
sessionWarningTimer = setTimeout('SessionWarning()', sessionTimeoutWarning * 60 * 1000);
在aspx页面上,我有:
<script type="text/javascript">
window.onload = function () {
$('a').filter(function (index) { return $(this).text() === "Month to Date"; }).click();
};
function ValidateAndShowPopup() {
if (Page_ClientValidate('grpSubmit')) {
SubmitF();
}
}
我在更新面板中有按钮:
<asp:Button ID="btnSubmitReport" runat="server" Text="Submit" OnClick="btnSubmitReport_Click" ValidationGroup="grpSubmit" OnClientClick="ValidateAndShowPopup()" CssClass="btn" />
只有两个解决方案是刷新按钮点击页面(我不想这样做),或者重置页面上的javascript计时器。 请指导如何在按钮单击时重置javascript计时器变量。
答案 0 :(得分:0)
这是你想要做的吗?
var session;
function startSessionTimer() {
session = setTimeout(function(){
alert("Session Expired");
}, 2000);
}
function stopSessionTimer() {
clearTimeout(session);
alert("Session Expiration Stopped");
}
// Immediately start session timer
// startSessionTimer();
&#13;
<button onclick="startSessionTimer()">Start Timer</button>
<button onclick="stopSessionTimer()">Stop Timer</button>
&#13;