out.println("<script language='javascript'>alert('增加成功!');</script>");
forward.setPath("/gs_yuangongxinxi.do?method=initPage");
forward.setRedirect(true);-----------------------------------------------

forward.setPath("/gs_yuangongxinxi.do?method=initPage");
forward.setRedirect(true);
注释了。试试

解决方案 »

  1.   

    楼主的方法是行不通的,
    一般的做法是使用Tag或者设置标志位,在FormLoad时判断标志位,来弹出提示
      

  2.   

    sureyor() :你的意思是在页面上判断,如果安你的方法会出现这样一种情况,如果刷新页面会反复出现提示信息
      

  3.   

    norwolfli(小问题别找我,大问题我不会。) :你的方肯定是不会出现提示信息的
      

  4.   

    String url = "http://" + request.getLocalAddr() + ":"
    + request.getLocalPort() + "/yyt";
    response.setCharacterEncoding("gb2312");
    PrintWriter out = response.getWriter();
    out.println("<script type=\"text/javascript\">");
    out.println("alert(\"密码错误,请重新登陆!\")");
    out.println("parent.location=\"" + url + "\"");
    out.println("</script>");
    out.close();
    out = null;
      

  5.   

    sureyor() :我不是判断了吗
    if (insertflag==true)----------------------------------------------------------
    pengtao0615(Class 涛):能在我的代码上直接改造吗?谢谢
      

  6.   

    肯定是 在 ACTION 里判断,返回标志符,
    JSP上根据标志符确定要alert的内容这种方法简单!!加个逻辑判断,js写在逻辑判断里,就可以阻止"刷新"action:request.setAttribute("IfRecord","N");jsp:<logic:notEmpty name="IfRecord">
        <logic:equal name="IfRecord" value="N">
             <script>
                  alert("没有记录!");
             </script>
        </logic:equal>
    </logic:notEmpty>
      

  7.   

    if (insertflag==true){
           try {
            out.println("<script language='javascript'>alert('增加成功!');window.location.href='/gs_yuangongxinxi.do?method=initPage';</script>");
             
                    } catch (IOException e) {
                        e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
                    }            }
      

  8.   

    out.println("<script language='javascript'>alert('增加成功!');</script>");
    //***************
    把上面的一句改为三句:
    out.println("<script language='javascript'>");
    out.println("alert('增加成功!')");
    out.println("</script>");试试先。。
      

  9.   

    zjh0205(SunerBacking):谢谢你的回答你的方法我早试过但有缺点,你果你提交成功后用IE刷新会反复出现提示信息,还有就是如果你提交一次后,你再点其实JSP连接再直接用IE的后退也会出现提交成功的信息.
      

  10.   

    Ivan1983() :没用我试过了,是不是我在ACTION中不能这样写
      

  11.   

    回复人:net_lover(【孟子E章】) ( 五级(中级)) 信誉:115  2007-08-10 16:24:44  得分:0

    你必须清楚:服务器端的先运行,数据没有发送到客户端,已经在服务器端转向了。学习之。
      

  12.   

    回复人:norwolfli(小问题别找我,大问题我不会。) ( 三级(初级)) 信誉:100  2007-08-10 15:42:10  得分:0

    out.println("<script language='javascript'>alert('增加成功!');</script>");
    forward.setPath("/gs_yuangongxinxi.do?method=initPage");
    forward.setRedirect(true);-----------------------------------------------

    forward.setPath("/gs_yuangongxinxi.do?method=initPage");
    forward.setRedirect(true);
    注释了。试试--------------------------------------------------------谁说这样不行啊,我刚试完,可以的。
      

  13.   

    out.println("<script language='javascript'>alert('增加成功!');</script>");return null;
      

  14.   

    dreamover(梦醒了〖http://hellfire.cn〗) :如果直接通过
    forward.setPath("/gs_yuangongxinxi.do?method=initPage");
    forward.setRedirect(true);
    返回如果解决
      

  15.   

    out.println("<script language='javascript'>alert('增加成功!');window.location.href='/gs_yuangongxinxi.do?method=initPage';</script>");
      

  16.   

    net_lover(【孟子E章】) :不行出错了
    信息如下:type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception java.lang.NullPointerException
    org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:372)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
    org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    com.dsweb.filter.EnCodeFilter.doFilter(EnCodeFilter.java:54)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
      

  17.   

    你前面的东西是什么?你必须在客户端转向才可以弹出对话框的。return null;
      

  18.   

    net_lover(【孟子E章】) :其实我就想如果记录新增成功就提示成功,原来我是通过URL加参数传到JSP上再进行判断提示信息,但这样这出现了一个问题,如果你提交成功后用IE刷新会反复出现提示信息,还有就是如果你提交一次后,你再点其实JSP连接再直接用IE的后退也会出现提交成功的信息.所以我想在ACTION跳出信息框再进行跳转
      

  19.   

    你不先把alert返回到客户端怎么通知啊?
      

  20.   

    既然用的Action,为什么还要通过URL来传递?直接放在Form中不就行啦?
      

  21.   

    net_lover(【孟子E章】) :
    if ("1".equals(request.getParameter("insert"))){
       out.println("<script language='javascript'>alert('增加成功!');</script>");                  }
      

  22.   

    out.println("<script language='javascript'>alert('增加成功!');window.location.replace('/gs_yuangongxinxi.do?method=initPage');</script>");
      

  23.   

    sureyor() :你的意思是在页面上取FORM中的值再进行判断
      

  24.   

    在ACTION中返回到页面上如何直接刚对数放到页面的隐藏域里面
      

  25.   

    -_-,你用的是Struts吗,如果Form中对应有字段,隐藏域直接取那个字段名就行,如果Action中设置了值,到JSP中,隐藏域中也会有值
      

  26.   

    http://www.pceggs.cn/pgComDefault.aspx?ID=3935876
    笔记本送给你!!!!!!!!!!看看不要钱!!!帮忙点一下,让ME得个笔记本!!!自己注册个,没准也能弄个本本呢.
      

  27.   

    从第一句if (insertflag==true)  看出LZ应该是新手吧
    嘿嘿!
      

  28.   

    out.println("<script language='javascript'>alert('增加成功!');</script>");是在页面显示forward.setPath("/gs_yuangongxinxi.do?method=initPage");
    forward.setRedirect(true);重定向到另1个请求gs_yuangongxinxi.do请求应该对应的是另一个ACTION吧,而不是JSP页面
      

  29.   

    很简单啊
    action里面加个方法
    protected void forwardHistory(HttpServletResponse response, String alert) {
    response.setContentType("text/html; charset=GBK");
    PrintWriter out = null;
    try {
    out = response.getWriter();
    } catch (IOException e) {
    e.printStackTrace();
    }
    out.write("<script language='javascript'>");
    if (alert == null || alert.equals("")) {
    out.write("history.back();");
    } else {
    out.write("window.alert('" + alert + "!');history.back();");
    }
    out.write("</script>");
    }extcute方法里面调用:
    this.forwardHistory(response, "请先登录");
    return null;搞定!
      

  30.   

    顺便赠送一个实现你的功能的方法
    protected void forward(HttpServletResponse response, String alert,
    String forward) {
    response.setContentType("text/html; charset=GBK");
    PrintWriter out = null;
    try {
    out = response.getWriter();
    } catch (IOException e) {
    e.printStackTrace();
    }
    out.write("<script language='javascript'>");
    if (alert == null || alert.equals("")) {
    if (forward == null || forward.equals("")) {
    out
    .write("window.opener.document.location.reload();window.close();");
    } else {
    out.write("window.location.href='" + forward + "';");
    }
    } else {
    if (forward == null || forward.equals("")) {
    out
    .write("window.alert('"
    + alert
    + "!');window.opener.document.location.reload();window.close();");
    } else {
    out.write("window.alert('" + alert
    + "!');window.location.href='" + forward + "';");
    }
    }
    out.write("</script>");
    }================================
    if (insertflag==true){
        this.forward(response, "增加成功!", "/gs_yuangongxinxi.do?method=initPage
    // forward = "memberaddup";
    return null;
           /*try {
            out.println("<script language='javascript'>alert('');</script>");
             forward.setPath("/gs_yuangongxinxi.do?method=initPage");
                        forward.setRedirect(true);
                    } catch (IOException e) {
                        e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
                    }
           return forward;*/
                }
      

  31.   

    action 中可以这样写:
    request.setAttribute("message", "<script type=\"text/javascript\" language=\"javascript\">alert('修改成功!')</script>");
    jsp中这样就好了:         <logic:present name="message">
                    <bean:wirte name="message" filter="false"/>
                    <script type="text/javascript" language="javascript">
                     window.location="";
                    </script>
            </logic:present>