3

我对 ActionForm 中的数组对象有疑问,该对象在 HTML 中显示为“Select”元素,用户可以添加和删除选项,然后在提交时添加或删除数据库中的值,一切正常,我全选提交时的选项,因此所有值都将映射到表单的数组中,依此类推。

但是,当用户提交一个空选择时,我没有看到表单对象有任何变化,表单没有识别出该数组的值为空。

我正在使用 struts 1.2

4

1 回答 1

4

如果未选择任何内容,则数组将保持在实例化表单 bean 时的状态。所以如果你把它初始化为一个空数组,你就会得到你想要的。

我的猜测是您正在为表单 bean 使用(不幸的)默认会话范围。这是一个不好的做法。您应该更喜欢请求范围的表单 bean。如果你真的想继续使用会话范围的表单 bean,那么它们应该覆盖 reset() 方法,以便在从请求参数填充之前将属性重置为其默认值。

于 2013-03-12T23:16:55.583 回答