基本环境:form1 上 有1个text field, 两个按钮,一个preview按钮,onclick事件中修改form action="preview.jsp" target="_blank"  点击后, 在新窗口中打开预览页面.另外有一个 "confirm" 按钮, onclick事件中 form action="confirm.jsp"步骤: 1. 我在text1 中 输入aaa, 按privew 后,在新窗口中取得text1 为 aaa ,并打印。 这里正常.
2. 由于步骤1中,submit 的时候在新窗口中打开(target="_blank") ,所以本窗口界面没变, 这时我修改text1的值为bbb, 然后点击,confirm 按钮,这时问题来了: 我在confirm.jsp中收到text1的值仍然为aaa.  为什么没有把最新的值bbb,提交到confirm.jsp中呢? 如何做才能实现?     

解决方案 »

  1.   

    奇怪,自己新建一个项目测试又好象没有这个问题,在原项目中就有,现在再检查一下是不是browser缓存引起的.
      

  2.   

    有可能是JSP对象作用域的问题,你提交第一次后关闭新窗口再提交一次就应该是bbb了。
    PS:关注此问题
      

  3.   

    也有可能是缓存问题,把WEB容器里的缓存清空一下试一试。Tomcat就把Work文件夹删除了
      

  4.   

    欢迎大家到脑力劳动网(www.nlld.net)访问,在那儿可进入深度交流,共同提高。
      

  5.   

    理论上那样没错的,也不是缓存的问题,因为每次第二个页面获得的是text1的值,也就是当前的输入值
    我是这样理解的
      

  6.   

    是这个意思吧,我测试后贴出来的,你比较下和你的有什么不同.<?xml version="1.0" encoding="GBK" ?>
    <html>
    <head>
    <title></title>
    </head>
    <body>
    <form action="x.jsp" method="post">
    <input name="text1"/>
    <input type="submit" onclick="this.form.action='confirm.jsp';this.form.target='_self';" value="confirm"/>
    <input type="submit" onclick="this.form.action='preview.jsp';this.form.target='_blank';" value="preview"/>
    </form>
    </body>
    </html>
      

  7.   

    tomcat服务器的问题! 故意让它出错,再改回去,就对了!