初始页面上有:[检索] [新增] [修改] [删除] 按钮!
1.输入一些检索条件点检索,该画面显示检索出的内容 
2.点 [新增],进入(新增页面)填入内容,点提交       
3.修改提交成功,返回初始页面  
4.初始页面却显示不了曾经输入的检索条件!也不显示在步骤1中检索出来的内容!操作流程如下:
1.info.do(初始页面Link http://xxxx...../info.do)->点检索-----》POST请求Link http://xxxx...../searchx.do
2.info.do(该画面显示检索结果)->此时Link为http://xxxx...../searchx.do
3.点新增-----》3.add.do(修改信息页)-----》此时Link为http://add.do
4.修改成功,add.do页面的Ajax回调方法,将页面迁移回http://xxxx...../searchx.do为了做上面操作后,迁移回http://xxxx...../searchx.do页面时,仍能显示出曾经输入的检索条件和检索出的内容!这个怎么做啊?要求不能用Session!其实,我看struts 用fromBean这种概念,封装的不错啊。用fromBean贯穿,一系页面的传值都用这一个fromBean,
如果不修改fromBean内容该内容就会一直存在。就象我在info.do的时候struts 就把 该画面上的检索框条件
set进fromBean,在页面迁移的过程中,只要我不在fromBean中修改,删除这个检索条件,他就可以伴随着页面的
迁移一直存在。我想模拟这种封装,而不用保持、或者重复传递页面间的数值,却不知道怎么做!
不知道我说明白了吗?

解决方案 »

  1.   

    你的意思是不是在检索后的画面上仍保留检索条件?
    我想你既然其他的都有用ajax那我觉得你把那个检索也用ajax处理,那样检索条件就会保留在那了。
    或者把检索条件传到后台,然后返回时再显示出来这些数据,这个也能实现,比较麻烦点。
      

  2.   

    初始页面却显示不了曾经输入的检索条件!也不显示在步骤1中检索出来的内容
    什么意思?
    跳轉頁面應該是要清空的啊
    不顯示很正常  你再檢索下就可以了啊   還是你檢索后顯示不出來新+的內容?
    那你先看看數據是不是已經進數據庫了,如果進的話是不是你初始化頁面的時候把內容寫死了或是sql語句出錯?
      

  3.   

    这几个页面你可以用同一个formBean,不管是迁移还是新开画面,把相应的值设好.
      

  4.   

    另外,检索条件的类型设为static.
      

  5.   

    嗯,看明白了
    其实我们的做法一般都是将formBean分开,然后检索后将formBean保存入session,修改成功回到检索页面时再将formBean取出来楼主说不想用这种办法,用一个formBean,也是能够做到的,说说你可能出问题的地方1.检索页面--->2.提交,form封装--->3.修改或新增页面--->4.提交,form封装--->5.检索页面
    我认为问题出在3和4之间,3提交后应当是先将form清空了,然后再封装3提交来的数据,
    此时如果你在1处的检索条件不被重新提交,form就将检索条件封装了个null,回到5后自然就没了解决办法:
    你可以在3的页面中加入hidden,将2中form里封装的检索条件保持在页面上,4提交时再将它还给form,
    这样在5处一定就有了,然后判断一下,如果有检索条件,那么执行检索
      

  6.   

    晕我表达有问题啊...to shan1119 我没有用struts .我是想用他的这种方式但是我不知道怎么做!
    我希望所有一系列的页面,或者说我希望的某几个页面!
    能都共享一个类似与fromBean的东西.这几个页面迁移的过程中.
    每个页面都可以在需要的地方获得这个fromBean.
    各个页面的迁移,只在提交给的java方法里面,才能修改这个fromBean中的属性.
    例如PageA提交后---
    会把PageA的文本框...等都绑定到一个fromBean中.
    然后在以后的迁移过程中。..如果我不修改fromBean的属性内容.
    那我在其他的页面也可以直接fromBean.get出这个fromBean的相关属性!
    如果我在某个地方修改了这个fromBean.那我get出的属性就是修改的属性...
      

  7.   

    to 冬瓜首先感谢  冬瓜 经常耐心的看和认真的回答!好感动55
    另外,我现在有点把自己绕进去了啊。本来我目的很明确的。
    现在如果有这样的用户
    他这样操作啊!
    1。检索了一些内容,显示了检索出来的列表,然后这个列表后面跟着一个修改按钮 <td list1.Title> <lind 修改>
    2。用户点了修改
    3。页面迁移到修改页面
    4。修改成功,ajax回调方法,将页面重新迁移回检索页面.(其实就是ajax回调,用 用户第一次输入的检索条件重新请求了search方法)
    伪代码:
    function showResponse(originalRequest)
    {
    var reMsg = originalRequest.responseText;
    if(reMsg=="ok");
    window.location.href='http://......./searchx.do';
    }这个流程是一个一般的流程吗?
    还是本来用户结束第3步以后,就应该迁移到初始的检索页面.也就是什么条件都还没有输入的情况呢?
    ps:我也不是想都用一个formBean,而是一系列的都用一个!我也不想用session因为我觉得1、效率低2、增加了一些代码量(需要添加清空session的代码)3、还要多管理一个session
      

  8.   

    首先感谢  冬瓜 经常耐心的看和认真的回答!好感动55
    另外,我现在有点把自己绕进去了啊。本来我目的很明确的。
    现在如果有这样的用户
    他这样操作啊!
    1。检索了一些内容,显示了检索出来的列表,然后这个列表后面跟着一个修改按钮 <td list1.Title> <lind 修改>
    2。用户点了修改
    3。页面迁移到修改页面
    4。修改成功,ajax回调方法,将页面重新迁移回检索页面.(其实就是ajax回调,用 用户第一次输入的检索条件重新请求了search方法)
    伪代码:
    function showResponse(originalRequest)
    {
    var reMsg = originalRequest.responseText;
    if(reMsg=="ok");
    window.location.href='http://......./searchx.do';
    }这个流程是一个一般的流程吗?
    还是本来用户结束第3步以后,就应该迁移到初始的检索页面.也就是什么条件都还没有输入的情况呢?
    ps:我也不是想都用一个formBean,而是一系列的都用一个!我也不想用session因为我觉得1、效率低2、增加了一些代码量(需要添加清空session的代码)3、还要多管理一个session
      

  9.   

    那你也可以定义一个formBean.变量都加上static
    这样你就可以用几个页面同时共享这个formBean了.
    特别注意一定得是static的.然后就可以用get, set方法取值设值了这个方法不知道行不行,你可以试试
    或者你也可以把这个条件放到数据库里.每次都从数据库中取得.
      

  10.   

    楼主只需要在你经过的每一个页面中都设置那些你需要保留不变的属性就可以
    比如formbean是Student,属性有name,id
    你需要在每一个经过的页面中都保留这2个字段的引用,如果不需要在页面中显出出来
    你可以设置为hidden就可以。<html:hidden property="name" />
      

  11.   

    一直forword直到你不想要这些数据为止.
      

  12.   

    to 冬瓜 首先感谢  冬瓜 经常耐心的看和认真的回答!好感动55 
    另外,我现在有点把自己绕进去了啊。本来我目的很明确的。 
    现在如果有这样的用户 
    他这样操作啊! 
    1。检索了一些内容,显示了检索出来的列表,然后这个列表后面跟着一个修改按钮  <td list1.Title>  <lind 修改> 
    2。用户点了修改 
    3。页面迁移到修改页面 
    4。修改成功,ajax回调方法,将页面重新迁移回检索页面.(其实就是ajax回调,用 用户第一次输入的检索条件重新请求了search方法) 
    伪代码: 
    function showResponse(originalRequest) 

    var reMsg = originalRequest.responseText; 
    if(reMsg=="ok"); 
    window.location.href='http://......./searchx.do'; 
    } 这个流程是一个一般的流程吗? 
    还是本来用户结束第3步以后,就应该迁移到初始的检索页面.也就是什么条件都还没有输入的情况呢? 
    ps:我也不是想都用一个formBean,而是一系列的都用一个!我也不想用session因为我觉得1、效率低2、增加了一些代码量(需要添加清空session的代码)3、还要多管理一个session 
      

  13.   

    检索????
    。。
    你搞外包的??(呵呵)不要用session(比较疯狂!)为了做上面操作后,迁移回http://xxxx...../searchx.do页面时,仍能显示出曾经输入的检索条件和检索出的内容! 
    用这个:
    <input type="hidden" name="" value="<%=%>">
      

  14.   

    用一个类专门来维持fromBean的对象,直到不用该对象时在释放。
    或者在fromBean中用static属性。