欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Struts html:checkbox框初始默認(rèn)是選中的解決方法

 更新時(shí)間:2012年12月12日 15:46:42   作者:  
在使用struts標(biāo)簽html:checkbox 的時(shí)候,如何讓checkbox框默認(rèn)是選中的,本文提供解決方法,需要了解的朋友可以參考下

在使用struts標(biāo)簽html:checkbox 的時(shí)候,如何讓checkbox框默認(rèn)是選中的,一般情況下都是當(dāng)Formbean里面該P(yáng)roperty的值和標(biāo)簽上value給定的值相等的時(shí)候,生成的jsp頁面上才是選中的。

在Struts中幾種情況可以使標(biāo)簽初始就是選中的,F(xiàn)ormbean里面該P(yáng)roperty的值設(shè)為 1.on 、2.yes 、3.true 這三種情況都是可以實(shí)現(xiàn)默認(rèn)選中的。

:如果不選中,最好把Property的設(shè)置為"",因?yàn)樵贏ction中得到Property是為null值,在不太注意的情況,它是會出現(xiàn)異常。

復(fù)制代碼 代碼如下:

public class CheckBoxForm extends ActionForm {
// private String id = "";
private String id = "on";
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}


jsp頁面
復(fù)制代碼 代碼如下:

<html:checkbox property="id">CheckBox</html:checkbox>

如同:<input type="checkbox" name="id" checked="checked">CheckBox</input> or <input type="checkbox" name="id">CheckBox</input>
具體業(yè)務(wù)在Action里去作處理,"".equals(actionForm.getId()) or "on".equals(actionForm.getId()) 一個(gè)是判斷沒有選中,一個(gè)是判斷選中,如果在ActionForm里沒有設(shè)置property,那就要用null去作判斷。

1)需求
當(dāng)通過菜單進(jìn)入頁面時(shí),頁面中的checkbox處于被選中狀態(tài),頁面提交后forward回本頁,對應(yīng)的checkbox保持提交時(shí)的狀態(tài),也就是說:如果提交時(shí)checkbox是選中狀態(tài)回來仍然是選中狀態(tài);如果用戶在提交前將checkbox的勾去掉,回來時(shí)checkbox應(yīng)該為為選中狀態(tài)。

2)問題
這個(gè)需求看起來很簡單,只需要
1)在對應(yīng)的form中將checkbox對應(yīng)的屬性設(shè)為true就行了:
private boolean syaken = true;
2)在對應(yīng)的jsp中使用html:checkbox標(biāo)簽就行了
<html:checkbox property="syaken"/>
但問題是checkbox標(biāo)簽不會去set初始化值為true的checkbox屬性,不賦初值時(shí)Struts默認(rèn)賦為false;
從網(wǎng)上找資料有人說可以實(shí)現(xiàn)ActionFrom的reset()方法將對應(yīng)的屬性值設(shè)為false,但reset方法是在form實(shí)例化以后被調(diào)用的,也就是說你初始化的值true將被重置為false,這和直接將屬性值設(shè)為false沒有任何區(qū)別,這樣做的結(jié)果是你從菜單進(jìn)入頁面時(shí)checkbox是處于不被選中的狀態(tài)。
他們之間存在著矛盾,問題的關(guān)鍵就是每次提交時(shí),Struts并沒有去重新設(shè)置所有checkbox的屬性值,而是有選擇地(初始化值為false)地進(jìn)行重新設(shè)置。

3)解決辦法
超級簡單,在checkbox后面添加一個(gè)和checkbox的屬性同名并且value為“false”的隱藏輸入框,強(qiáng)迫Struts去重新設(shè)置checkbox的屬性值:
<html:checkbox property="syaken"/>&nbsp;
<input type="hidden" name="syaken" value="false">

相關(guān)文章

  • JSP Spring中Druid連接池配置詳解

    JSP Spring中Druid連接池配置詳解

    這篇文章主要介紹了JSP Spring中Druid連接池配置詳解的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • 跨平臺Java程序

    跨平臺Java程序

    跨平臺Java程序...
    2006-10-10
  • Spring MVC 框架搭建配置方法及詳解

    Spring MVC 框架搭建配置方法及詳解

    現(xiàn)在主流的Web MVC框架除了Struts這個(gè)主力 外,其次就是Spring MVC了,因此這也是作為一名程序員需要掌握的主流框架,框架選擇多了,應(yīng)對多變的需求和業(yè)務(wù)時(shí),可實(shí)行的方案自然就多了。不過要想靈活運(yùn)用Spring MVC來應(yīng)對大多數(shù)的Web開發(fā),就必須要掌握它的配置及原理
    2014-09-09
  • Java語言中鏈表和雙向鏈表

    Java語言中鏈表和雙向鏈表

    Java語言中鏈表和雙向鏈表...
    2006-10-10
  • JSP上傳文件到指定位置實(shí)例代碼

    JSP上傳文件到指定位置實(shí)例代碼

    復(fù)制上傳文件,上傳文件到服務(wù)器指定位置,注意,提交表單需要制定enctype的類型
    2013-10-10
  • jsp操作MySQL實(shí)現(xiàn)查詢/插入/刪除功能示例

    jsp操作MySQL實(shí)現(xiàn)查詢/插入/刪除功能示例

    jsp操作MySQL實(shí)現(xiàn)查詢、插入與刪除功能(query、insert、delete)示例如下,感興趣的朋友可以參考下
    2013-08-08
  • Spring mvc實(shí)現(xiàn)Restful返回json格式數(shù)據(jù)實(shí)例詳解

    Spring mvc實(shí)現(xiàn)Restful返回json格式數(shù)據(jù)實(shí)例詳解

    這篇文章主要介紹了Spring mvc實(shí)現(xiàn)Restful返回json格式數(shù)據(jù)實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • 最新評論