setTimeout的失效问题,无论时间设成多大,都是直接跳转

      最近碰到一个问题,就是发现js函数的超时设定失效,比如我下面这段代码

 1protected void Page_Load(object sender, EventArgs e)
 2        {
 3            if (!IsPostBack)
 4            {
 5                string target = Request.QueryString["target"];
 6                string info = Request.QueryString["info"];
 7                if (target != null && info != null)
 8                {
 9                    lbInfo.Text = info;
10                    hlRedirect.NavigateUrl =target;
11                    ClientScript.RegisterClientScriptBlock(this.GetType(), "startup",
    
"<script language='javascript'>setTimeout(window.location.href='" + target + "',2000)</script>");
12                }

13            }

14        }


    本来我是想在做一个像论坛登录一样,登录成功后会显示“登录成功,稍后转入论坛页……”的简单页面,靠接收Url参数来显示提示内容,和要转入的页面。但程序执行的时候,根本就没有等待,直接就转过去了。后面设那个超时数字无论多大都没有用,我查了相关资料,把超时时间用单引号引起来也没有用。一直很郁闷,不知哪位大哥能指点一下,看是哪出错了。

   顺便说一下,会不会是我这个项目是asp.net ajax -enabled web site 有关。

posted @ 2007-07-21 15:36  缤纷夏日  阅读(1326)  评论(0编辑  收藏  举报