日期:2014-05-17  浏览次数:27687 次

<html:checkbo>标签和ActionForm中的reset()

<html:checkbox property="checkbox1">

property属性和ActionForm Bean中的属性相对应。

value属性,用来设置用户选中检查框时的值。默认值为true.

当使用<html:checkbox>标签时需要在ActionForm Bean的reset()方法对其复位,当<html:checkbox>value属性为true时,必须在reset()方法中把对应的属性设置为false.当<html:checkbox>value属性为false时,必须在reset()方法中把对应的属性设置为true.如果不进行复位,一旦用户选中checkbox那么这个checkbox将永远为选中状态。即使用户取消了选中状态,checkbox仍为选中状态。(对于session范围内的ActionForm就可以看出了)

?


ActionForm中的reset()方法用来完成属性初始化,不管ActionForm Bean在那个范围内,控制器都会先调用ActionForm中的reset()方法,然后在把表单的数据组装到ActionForm中.如果ActionForm在request范围内,那么对于每个新的请求都会创建新的ActionForm实例,当新的实例创建后,如果他的属性已经被初始化为默认值,那么接着在调用reset()方法初始化属性就没有必要了。因此在这种情况下,可以让reset()方法为空。对于session范围内的ActionForm,同一个ActionForm实例会被多个请求共享,那么reset()方法在这种情况下极为有用。

?