0

我有使用struts bean标签库的jsp:

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>JSP Page</title>

    <link rel="stylesheet" type="text/css" href="css/stylesheet.css">

</head>
<body>
<p><a class="colorGrey" href="Welcome.do">
    <bean:message key="menu.label" />
</a> &gt;&gt;<bean:message key="menu.link.addnews" /> </p>
<p><br>
</p>

<html:form action="/NewsSave">
<table width="100%" border="0">
<tr>
<td class="colorGrey" width="164" height="35">
    <bean:message key="body.news.title" />  </td>
<td width="577">
    <html:text property="newsTitle"  size="40" value=""/>    </td>

</tr>
<tr>
<td colspan="2">
    <html:errors property="newstitle" />
</td>
</tr>
<tr>
<td class="colorGrey">
    <bean:message key="body.news.date" />   </td>
<td>
    <html:text property="newsDate" size="10" value=""/>    </td>
</tr>


<tr>
<td height="21" colspan="2" valign="top">
    <html:errors property="newsdate" />
</td>
</tr>
<tr>
<td class="colorGrey" height="61" valign="top">
    <bean:message key="body.news.brief" />  </td>
<td valign="top">
    <html:textarea property="brief" cols="40" rows="6" value=""/>
</td>
</tr>

<tr>
<td height="23" colspan="2" valign="top"><html:errors property="brief" /></td>
</tr>
<tr>
<td class="colorGrey" height="100" valign="top">
    <bean:message key="body.news.content" />
</td>
<td valign="top">
    <html:textarea property="content" cols="40" rows="12" value=""/>
</td>
</tr>
<tr>
<td height="23" colspan="2" valign="top">
    <html:errors property="content" />
</td>
</tr>
</table>

<html:submit value="SAVE"/>
</html:form>
<form method="POST" 
action="Link.do?method=newsList"
onsubmit="return confirm('<bean:message key="body.onsubmit.cancel" />')">
<input type="submit" value="CANCEL">
</form>

而且我使用验证器插件,这意味着在收到不正确的信息后,它会在下面的文本字段中给出消息,告诉您出了什么问题。但问题是提交后一切都消失了。所以它没有信息texttext-area标签。我知道这是因为value="". 但是我有另一个页面,其中包含用于添加信息的相同字段,从一开始就应该清楚。如果我删除value="",此字段中的信息将在转发后显示在该页面上。所以

  1. 转发到另一个页面后,我应该怎么做才能清除表单中的信息?
  2. 验证成功后如何保留信息?
4

1 回答 1

1

正如您所提到的,您应该删除 value="" 因为这会将字段设置为空。如果要清除这些值,则应在填充 Form bean 的 Action 类中执行此操作。
如果您发现您的表单 bean 在请求之间保留了它们的值,请检查它们是否是请求范围:操作元素的范围属性应该是 struts.config 中的“请求”

于 2012-05-16T12:44:01.903 回答