Sparta Yew

               簡約、職業(yè)、恒久
          隨筆 - 15, 文章 - 1, 評論 - 276, 引用 - 0
          數(shù)據(jù)加載中……

          Struts2標簽之Checkbox詳解

            
              sparta-紫杉   2010-4-14 16:53


              開發(fā)環(huán)境:eclipse3.4.2 + weblogic10.3 + jdk1.6.0_13 + Struts2.1.8 + Spring3.0.1 + Hiberante3.3.2

              在Web系統(tǒng)或項目的開發(fā)過程中,jsp頁面上經(jīng)常會使用checkbox來實現(xiàn)用戶多選的要求。

              普通的寫法多半是這樣:
              <input type=checkbox name="abc" value="1" checked>北京<br>
              <input type=checkbox name="abc" value="2">上海<br>
              <input type=checkbox name="abc" value="3">天津<br>

              那么既然使用了SSH2的開發(fā)框架,當(dāng)然要使用Struts2的<s:checkbox/>標簽來實現(xiàn)用戶的多選要求。

              令人不解的是,網(wǎng)絡(luò)上大多是在詳解<s:checkboxlist/>,但對于<s:checkbox/>卻描述的很少。
              今天正好要用到這個<s:checkbox/>,咱也不妨來“詳解”一下子,一來是做個筆記,二來若是能為各位程序達人在關(guān)鍵時刻提個醒,以解決探索之苦!

              至于<s:checkbox/>和<s:checkboxlist/>的區(qū)別我不談了,大家可以在百度上搜一下。

              其實,<s:checkbox/>還是挺好入門的,不外乎有下面幾個屬性,id、name、value、fieldValue、label共計5個常用屬性。

              id和name: 指的是該標簽的標識id和標識名。
              value   : 指是否選中,其值只能為True或False,相當(dāng)于傳統(tǒng)checkbox中的checked。
              fieldValue : 相當(dāng)于傳統(tǒng)checkbox中的value值。
              label   : 對于該checkbox顯示在頁面上方框后面的描述。

              還是打個簡單的比方吧, 比如我要用角色id(RoleId)和角色名稱(RoleName)來生成很多checkbox,那么采用如下的寫法。

              <s:checkbox id="permisskey" name="permisskey" label="超級管理員" value="true" fieldValue="Role_Admin"/>
              <s:checkbox id="permisskey" name="permisskey" label="普通用戶" value="false" fieldValue="Role_User"/>

              那么在生成真正的Html頁面時,大約是下面這樣的形式:

              <input type="checkbox" id="permisskey" name="permisskey" checked value="Role_Admin">超級管理員
              <input type="checkbox" id="permisskey" name="permisskey" value="Role_User">普通用戶

              當(dāng)然上面的例子建立在Struts2默認的主題(theme)下,大家可別忘了這個關(guān)鍵的屬性“theme”。

              不妨再加個屬性試試吧:

              <s:checkbox theme="simple" id="permisskey" name="permisskey" label="超級管理員" value="true" fieldValue="Role_Admin"/>
              <s:checkbox theme="simple" id="permisskey" name="permisskey" label="普通用戶" value="false" fieldValue="Role_User"/>

              設(shè)置了theme="simple"之后,便自動放棄了Struts2的一些裝飾。那么顯示的頁面上的結(jié)果會令你大吃一驚的:

              <input type="checkbox" id="permisskey" name="permisskey" checked value="Role_Admin">
              <input type="checkbox" id="permisskey" name="permisskey" value="Role_User">

              注意到?jīng)]有, 后面的“超級管理員”和“普通用戶”兩段字眼莫名其妙的消失了。這就是theme起的主要作用。

              當(dāng)然,還需要注意,這個theme是有繼承性的, 比方說,這個<s:checkbox/>在一個<s:form/>里面,并且這個<s:form/>里面也設(shè)置了theme="simple"的話,就會影響到這個<s:checkbox/>,等于為該<s:checkbox/>設(shè)置了theme-"simple"。

              哈哈,就這么多了。



                      -東營 sparta-紫杉 原創(chuàng),轉(zhuǎn)載請注明出處 :)
                      http://www.aygfsteel.com/SpartaYew/
                      SpartaYew@163.com
           
                      
          QQ:22086526

          posted on 2011-05-19 14:00 sparta-紫杉 閱讀(33614) 評論(3)  編輯  收藏 所屬分類: SSH2

          評論

          # dd  回復(fù)  更多評論   

          dasda
          2012-08-22 14:41 | dasd

          # re: Struts2標簽之Checkbox詳解  回復(fù)  更多評論   

          不錯
          2014-07-22 08:50 | 阿宏

          # re: Struts2標簽之Checkbox詳解  回復(fù)  更多評論   

          言簡意賅,寫的真的真不錯
          2015-06-19 15:03 | 能能
          主站蜘蛛池模板: 南皮县| 峡江县| 上犹县| 平果县| 精河县| 陇川县| 赤峰市| 华安县| 清原| 涿州市| 梨树县| 揭阳市| 会同县| 昭通市| 吴堡县| 周至县| 仪陇县| 修水县| 开封县| 南安市| 杭锦旗| 昆明市| 嘉祥县| 明光市| 屏东县| 大渡口区| 工布江达县| 安宁市| 清河县| 贡觉县| 林西县| 新安县| 略阳县| 澎湖县| 灵山县| 开远市| 平顺县| 宁南县| 元阳县| 荣昌县| 宜昌市|