else
      {
        out.print("<script language=\"JavaScript\">alert(\"警告:你必须首先同意协议才能进行注册!\");</script>");
        response.sendRedirect("muchfollow.jsp");
      }
上面的代码,该句out.print("<script language=\"JavaScript\">alert(\"警告:你必须首先同意协议才能进行注册!\");</script>");没有执行,而是跳过直接执行了response.sendRedirect("muchfollow.jsp");而我删除了后面的语句,前面的script语句就能执行。
不知道是为什么,急等答案

解决方案 »

  1.   

    这样改改吧else
         {
           out.print("<script language=\"JavaScript\">alert(\"警告:你必须首先同意协议才能进行注册!\");window.location.href='muchfollow.jsp'</script>");
         }
      

  2.   

    response.sendRedirect("muchfollow.jsp");
    要求客户端重新访问另一个资源,所以那段js不起作用.
      

  3.   

    不是自上而下执行的吗?先遇到js执行然后再是Redirect
      

  4.   

    js的代码是在客户端的浏览器上执行的,也就是说要返回到客户端了,这时候不在服务器上了,但是下一句的代码却是Java代码,却需要在服务上执行.所以这是行不通的.
      

  5.   

    response.sendRedirect("muchfollow.jsp");
    是对输出进行了重新定向,原来的输出会被忽略,
    你可以在out.print输出的html标签中,加入跳转JS代码
    用js实现这个跳转
      

  6.   

    去请问在用out.print之前要导入什么吗?还是要定义什么
    我定义了一个
    import java.io.PrintWriter;
    PrintWrite out = null;
    这样还是不执行请指点一下呗
    谢啦