请大家帮帮忙。我用struts2 spring hibernate做的
问题是这样的:
有一个页面上部分显示评论,下半部分用户可以直接输入自己的评论,现在的问题是但我提交后action执行完以后,我再跳转到同一个页面,上部分评论更新了,增加了刚刚加入的评论,但下部分的form表单中刚输入的评论还在,数据没有清空。
comment.jsp:
<s:form action="newComment" method="post">
  <s:iterator value="pageComment.elements">
      <s:property value="content" />
  </s:iterator>
  总共<s:property value="totalRows" />条评论标题:<s:textfield name="comment.title"></s:textfield>
详细内容:<s:textarea name="comment.content" rows="8" cols="40"></s:textarea>
<s:hidden name="currentPage" value='%{currentPage}'></s:hidden><s:submit value="提交" />
</s:form>struts.xml:
<action name="newComment" class="commentAction" method="newComment">
            <result type="chain">readComment</result>
</action>
<action name="readComment" class="commentAction">
            <result>comment.jsp</result>
</action>
spring中的bean配置省略了。<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">这样设置,把页面缓存清空也没有用spring中bean是单例的,在action中保存后把comment这个对象中title和content属性置为“”,也还是没有用。哪位大侠指导指导我呀,谢谢了。

解决方案 »

  1.   

    添加操作后,清空comment就行啦
    commentService.add(this.comment);
    this.comment = null;
      

  2.   

    this.comment = null;这样就可以了。
    能否为我解答一下,为什么this.comment.title = "",this.comment.content = "",这样为什么不行呢?一定要this.comment=null。对其原理我还是搞不懂?
      

  3.   

    你这样应该可以的吧,最起码页面应该看不到数据了吧。
    我没这样试过,,页面回显的是comment的数据,清空应该回显不出来了