濮阳杆衣贸易有限公司

主頁 > 知識庫 > Struts html:checkbox框初始默認是選中的解決方法

Struts html:checkbox框初始默認是選中的解決方法

熱門標(biāo)簽:山東ai外呼電銷機器人好用嗎 地圖標(biāo)注專業(yè)和非專業(yè) 外呼直播語音系統(tǒng) 福建電銷貓機器人收費 湖北地圖標(biāo)注公司 甘肅銷售電銷機器人公司 四川正規(guī)外呼系統(tǒng)軟件 智能電話機器人銷售話術(shù) 汝南縣地圖標(biāo)注app

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

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

:如果不選中,最好把Property的設(shè)置為"",因為在Action中得到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()) 一個是判斷沒有選中,一個是判斷選中,如果在ActionForm里沒有設(shè)置property,那就要用null去作判斷。

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

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

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

您可能感興趣的文章:
  • struts2+spring+hibernate分頁代碼[比較多]
  • jsp struts1 標(biāo)簽實例詳解
  • 搭建EXTJS和STRUTS2框架(ext和struts2簡單實例)
  • 如何用struts調(diào)用支付寶接口
  • 關(guān)于Struts2的類型轉(zhuǎn)換詳解
  • ajax+json+Struts2實現(xiàn)list傳遞實例講解
  • Java(基于Struts2) 分頁實現(xiàn)代碼
  • 使用maven+eclipse搭建struts2開發(fā)環(huán)境
  • struts2單個文件上傳的兩種實現(xiàn)方式
  • struts2中一個表單中提交多個請求的例子(多個提交按鈕)
  • struts2+jquery實現(xiàn)ajax登陸實例詳解
  • java中struts2實現(xiàn)文件上傳下載功能實例解析
  • java中struts 框架的實現(xiàn)
  • java中struts配置

標(biāo)簽:肇慶 白銀 昌都 黔東 吳忠 南充 臨沂 梅州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Struts html:checkbox框初始默認是選中的解決方法》,本文關(guān)鍵詞  Struts,html,checkbox,框,初始,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Struts html:checkbox框初始默認是選中的解決方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于Struts html:checkbox框初始默認是選中的解決方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    华容县| 洛宁县| 松溪县| 革吉县| 怀远县| 突泉县| 新绛县| 辽宁省| 鹤庆县| 百色市| 襄城县| 望奎县| 兰坪| 湘潭市| 屯留县| 莱西市| 雅江县| 平乡县| 芜湖市| 十堰市| 贵阳市| 容城县| 上蔡县| 红安县| 大足县| 永济市| 山西省| 开鲁县| 肃宁县| 金坛市| 华安县| 常山县| 福建省| 保定市| 叙永县| 洪湖市| 瑞丽市| 宁明县| 凉城县| 牟定县| 隆化县|