用dwr+ssh做多条数据批量删除时,出现了很奇怪的事情。在删除完成后,我用: location.replace(location.href);    这个方法刷新页面。但是经常是页面没变化,或者只显示删除了一条,总之与数据库不同步。但是手动F5刷新一次它又跟数据库同步了。请问这个怎么解决?PS:我是用dwr把删除记录的id传回后台,然后deleteById()逐条删除的。

解决方案 »

  1.   

    location.replace(location.href)这种刷新没用过,不过,你也可以用window.location=url这种地址栏直接跳转
      

  2.   

    这样刷新不行吧 你的展示数据的地方要整个刷新才可以
    你用DWR删掉一条数据 DWR只是将操作后的结果告诉你 成功或者失败
    如果成功 你就会少一条数据 这时我们一般都是重新去请求数据库或者缓存 去刷新页面数据
      

  3.   

    刷新完后 重新用dwr调用查询的方法 重新获取结果集就没问题了
      

  4.   

    没必要这么复杂吧这个貌似只和dwr有关系啊你刷新整个页面,然后再写window.onload()方法刷新数据应该就可以了
      

  5.   

    我的查询方法是在Action中的,完全由struts2来做。而且页面上显示数据也都是用struts2标签。dwr一般不做数据查询。要用dwr做的话页面又得改啦~
      

  6.   


    这个办法可以,不过可以只用window.reload();
      

  7.   

    用Ajax 进行客户端与数据的同步,在不刷新页面的同时也能实现数据更改时客户端也同步更改