 悬赏园豆:10
                [已解决问题] 
            
                    解决于 2008-12-22 20:29
                悬赏园豆:10
                [已解决问题] 
            
                    解决于 2008-12-22 20:29 
                 
         if(Session["UserName"]==null)
        {
            Response.Write("<script language=javascript>alert('你没有登录!无法购买请登录!')</script>");
            Response.Redirect("Logon.aspx");
        }
我想让下面的5秒后执行Response.Redirect("Logon.aspx"); 跳转!中间该如何写延时代码呢?
===================
麻烦您按照我的这个加上 延时代码!谢谢!我新手 。
这是我以前搞的一个跳转的页面中的代码,你可以研究一下
<asp:Content ID="ct" ContentPlaceHolderID="_main" runat="server">
    <br />
    <br />
    <br />
    <br />
    <br />
    <div align="center">操作执行成功,<span id="time_second" style="FONT-WEIGHT: bold; COLOR: red; FONT-STYLE: italic"></span>秒钟后页面自动跳转!</div>
    <br />
    <div align="center">
        <input id="btnGoURL" type="button" value="继续" onclick="EndPageLoad();" class="button1" /></div>
    <script type="text/JavaScript">
    <!--
          var iIntervalId;
          var totalSecond =5;
          var strURL ="<%=strGoURL %>";
          time_second.innerText =totalSecond;
          BeginPageLoad();
          function BeginPageLoad()
          {
           iIntervalId=window.setInterval("PageProcess()",1000);
          }
          function PageProcess()
          {
              if (totalSecond > 0)
              {
                  totalSecond -=1;
                  time_second.innerText =totalSecond;
              }
              else
              {
                  EndPageLoad();
              }
          }
          function EndPageLoad()
          {
              window.clearInterval(iIntervalId);
              window.location=strURL;
          }
    //--> 
    </script>
</asp:Content>
你的:
Response.Write("<script language=javascript></script>");
Response.Redirect("Logon.aspx");
不应该这样写的
System.Threading.Thread.Sleep(5000);
不知道你这个是做什么用?? 需要延迟5秒之多?
让客户端跳转吧,使用setTimeout方法就行
这样吧。应该可以~
Response.Write("<script language=javascript>function goToUrl(){window.location='Logon.aspx'}window.setInterval("goToUrl()",5000);</script>");
//Response.Redirect("Logon.aspx");
你的想法肯定是想先write一个javascript或HTML到客户端去执行。过几秒钟又write另一部分javascript或HTML。。。
一个Response不能先发一半,另一半等一下发。asp.net会等整个Response生成再一起发。