会话超时消息在实际会话超时5分钟之前弹出?

时间:2012-03-26 16:19:24

标签: c# javascript

我需要在会话超时前5分钟显示超时弹出窗口。到目前为止我已经

<script type="text/javascript">

       function Timeout(intMilsec) {
               setTimeout("window.focus(); alert('Your session will timeout in 5
minutes')", intMilliseconds);
       }
</script>

在c#中

 if(Session["id"] != null)
  {

      int time = (Session.Timeout - 5) * (60 * 1000);
      Img.Attributes.Add("onload", "Timeout(" +time + ");");
  }
  else
      Img.Attributes.Remove("onload");

弹出窗口在5分钟之前没有出现,也从未出现过。我需要知道我是否缺少任何设置

2 个答案:

答案 0 :(得分:0)

我不明白为什么你使用了图像的onload事件,但无论如何......

您可以使用Page.ClientScript.RegisterStartupScript(typeof(string), "SessionTimeout", "setTimeout(" + time + ")", true);在页面加载时调用脚本。

答案 1 :(得分:0)

你的JavaScript有效吗?你有没有单独尝试过?我尝试了你发布的完全相同的代码,但它没有用。试试这个:

function Timeout(intMilsec) {
    setTimeout(function() { alert('Your session will timeout in 5 minutes'); }, intMilsec);​​​​​​​​​​​​
}