为了某种需要,formBean的SCOPE设置成了session。执行action后发现上一次输入的表单<html:form>数据还在上面。有什么办法可以让struts自动清空表单域?
想了一会,问题解决了。原来不是<html:form>的问题,而是formBean本身的问题。如果FormBean的scope是request,那么它只在请求发生时被创建,请求结束后它也就被废弃了。既然formBean的scope是session,那么它在用户建立与服务器的会话之时就被创建,而且在整个会话过程中,它一直是有生命的。如果它的属性值不为空,自然会反映到与之相关的<html:form>里。
我的解决办法是在执行数据库操作后,手动将formBean的属性值清空:
……
String sql = "INSERT articles valueS('','" + myform.getTitle() + "','" + myform.getContent() + "',null," + folder +");";
int i = mysql.executeUpdate(sql);
myform.setTitle(null);
myform.setContent(null);
另一个解决办法就是将scope设置为request.
分享到:
相关推荐
此标签提供自动完成功能,类似于 `s:combobox`,但支持 AJAX 调用,能够实现异步加载建议列表。 **示例:** ```xml ``` ##### 6. `<s:bean name="">` 该标签用于渲染 JavaBean 的值,类似于 Struts 1.x 中的 `...
`<s:reset>` 标签用于创建重置按钮,清空表单中的所有字段。 ### 34. `<s:select>` 标签 `<s:select>` 标签用于创建下拉选择框,可以绑定到模型对象的属性。 ### 35. `<s:set>` 标签 `<s:set>` 标签用于设置变量...
`CreateSession`拦截器用于创建一个新的`HttpSession`,而`ClearSession`则用于清空`HttpSession`中的所有数据。这两个拦截器对于会话管理非常有帮助。 ##### 2.7 Debugging 启用此拦截器可以让Struts2以调试模式...
2. `<s:reset>`:创建重置按钮,用于清空表单数据。 通过使用Struts2的这些标签,开发者可以更专注于业务逻辑,而不是繁琐的HTML和JSP代码,提高了开发效率和代码的可维护性。同时,由于这些标签与Action和Model...
33. `<s:reset>`:创建一个重置按钮,用于清空表单数据。 34. `<s:select list="">`:创建一个单选下拉框,用户只能选择一个选项。 35. `<s:set name="">`:设置一个变量,可以将值放入Value Stack。 36. `...
2. `<s:reset>`:创建重置按钮,清空表单数据。 S部分: 1. `<s:select>`:创建单选选择框,从列表中选择值。 2. `<s:set>`:设置一个变量,并将其放入特定的作用域。 3. `<s:sort>`:对列表进行排序,可以通过...
37. `<s:reset>`:创建重置按钮,清空表单数据。 38. `<s:select>`:创建单选框或下拉菜单。 39. `<s:set>`:设置变量,可在特定作用域内使用。 40. `<s:sortcomparetor>`:用于排序比较,实现数据的排序功能。 ...
`submit`用于提交表单,`button`可以绑定JavaScript事件,`reset`则用于清空表单内容。 9. **脚本元素**:在JSP中,可以使用脚本元素 `<%...%>` 来插入Java代码,例如 `(“5 秒钟刷新一次”)%>`。 10. **JSP动作...