和的區別

<html:checkbox>
標籤在表單上生成標準的HTML檢查框,假如ActionForm Bean中的某個屬性只有兩種可選值(truefalse),就可以在表單中用<html:checkbox>標籤來表示,

<html:checkbox property="checkbox1">

property屬性ActionForm Bean中的屬性相對應。

value屬性,用來設置用戶選中檢查框時的值。默認值爲true.

當使用<html:checkbox>標籤時需要在ActionForm Beanreset()方法對其復位,當<html:checkbox>value

屬性爲true時,必須在reset()方法中把對應的屬性設置爲false.<html:checkbox>value屬性爲false時,必

須在reset()方法中把對應的屬性設置爲true.如果不進行復位,一旦用戶選中checkbox那麼這個checkbox

永遠爲選中狀態。即使用戶取消了選中狀態,checkbox仍爲選中狀態。


ActionForm中的reset()方法用來完成屬性初始化,不管ActionForm Bean在那個範圍內,控制器都會先調用

ActionForm中的reset()方法,然後在把表單的數據組裝到ActionForm.如果ActionFormrequest範圍

內,那麼對於每個新的請求都會創建新的ActionForm實例,當新的實例創建後,如果他的屬性已經被初始

化爲默認值,那麼接着在調用reset()方法初始化屬性就沒有必要了。因此在這種情況下,可以讓reset()

法爲空。

對於session範圍內的ActionForm,同一個ActionForm實例會被多個請求共享,那麼reset()方法在這種情況

下極爲有用。


<html:multibox>標籤

<html:chexkbox>標籤一樣可以提供<input type="checkbox">元素,區別他和ActionForm Bean的關聯不

一樣。如果應用中有多個<html:multibox>那麼他在通過property屬性與ActionForm Bean中的數組相關聯。

當用戶提交表單時,所有被選中的複選框的值都會被存放在ActionForm Bean中的相應數組中,如果某個復

選框沒有被選中,那麼數組就不會包含他的值。<html:multibox>可以動態決定被選中的複選框數目,只要這

些複選框的Property屬性相同,而value不一樣,他們就和ActionForm Bean的同一個數組對應。

<html:checkbox><html:multibox>區別

<html:checkbox>標籤property屬性和ActionForm中的一個屬性相關聯,

比如<html:checkbox property="checkbox1">對應ActionForm中的checkbox1屬性,

<html:checkbox property="checkbox2">checkbox2屬性。

此時將checkbox1屬性指定爲value屬性表示的值,則複選框爲默認選中狀態。

<html:checkbox property="checkbox1" value="1"/><br> ActionForm中的checkbox1屬性值=1

如果在ActionForm中以數組形式關聯<html:checkbox>標籤,初始化時將沒有顯示。


比如:

<html:checkbox property="checkbox2" value="1">

<html:checkbox property="checkbox2" value="2">


以上<html:checkbox>標籤property屬性相同,那麼在ActionForm中使用如下方式使其默認選中則沒有效果

private String checkbox2[]=new String[]{"1","2"};

此時應使用<html:multibox>標籤


<html:multibox property="checkbox2" value="1">

<html:multibox property="checkbox2" value="2">

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章