我现在想实现一个功能,就是通过定时器设定好时间,只要一到时间,就弹出一个页面出来。
<%@ page language="java" import="java.util.*,java.util.TimerTask" pageEncoding="UTF-8"%>
<html>
  <head>
  </head>
   <%    Timer timer=new Timer();
     timer.schedule(new TimerTask(){
                   public void run(){
             //在打开一个jsp页面后,马上计时,到了10秒后,把这个页面转向163这个网站
                        response.sendRedirect("http://www.163.com");
                   }               
   },10000);
   %>
<body>
    This is my JSP page. <br>
</body>
</html>
这个代码已经可以在10秒钟之后执行RUN里面的东西,但是就是转向不到163这个页面。好像这个response这jsp内部的,在run里就不可用了。

解决方案 »

  1.   

    可以用javascript来做,只要能到时间之后,弹出一个新窗口,打开我想打开的网站就行了。
      

  2.   

    你对客户端和服务器端代码的定义还比较模糊。所有的java程序都是在服务器端执行完以后,输出给客户端的。到了客户端,是不可能执行java代码的。
    客户端只能看到执行结果。你这个只能用javascript来实现。而且html好像有个功能可以实现。挺容易的。
      

  3.   

    如何让站点自动跳转到另一页?
       加入以下代码到HTML文件中即可:
    <meta http-equiv="refresh" content="5;url=http://www.yufeng21.com/index.htm">
      
    content中的"5"为停留的秒数,http://www.yufeng21.com/index.htm 是将要跳转的页面。
      

  4.   

    按照funcreal(为中华之崛起而编程)的方法,我要的是不改动当前的窗口,打开一个新的窗口来显示那个跳转的页面,这样可以实现吗。
      

  5.   

    <script>
    //定时器执行的动作
    function reload()
    {
      window.open("http://www.csdn.net","","300;400")
    }//设置定时期
     setTimeout("reload();",3000);
    </script>
      

  6.   

    谢谢楼上的,我现在要在数据库里读等待的秒数,setTimeout("reload();",3000);这句话要怎样改才可以读到我外面java的参数啊
      

  7.   

    你把setTimeout("reload();",3000);里面的3000变成参数传进去不就行了吗,参数是在你的JSP页面得到的,例如:
    <script language="javascript">  function reload(time)
      {
        //代码快....
        setTimeout("reload();",time);
      }</script>
      

  8.   

    在jsp页面中这样写。
    servlet执行完以后,用户得到的页面中不就有一个时间了?setTimeout("reload();",<%=getTimeFormDB()%>);