Sparta Yew

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

          Struts2標(biāo)簽之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)或項(xiàng)目的開發(fā)過程中,jsp頁面上經(jīng)常會使用checkbox來實(shí)現(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/>標(biāo)簽來實(shí)現(xiàn)用戶的多選要求。

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

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

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

              id和name: 指的是該標(biāo)簽的標(biāo)識id和標(biāo)識名。
              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頁面時(shí),大約是下面這樣的形式:

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

              當(dāng)然上面的例子建立在Struts2默認(rèn)的主題(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-紫杉 閱讀(33616) 評論(3)  編輯  收藏 所屬分類: SSH2

          評論

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

          dasda
          2012-08-22 14:41 | dasd

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

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

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

          言簡意賅,寫的真的真不錯
          2015-06-19 15:03 | 能能
          主站蜘蛛池模板: 邻水| 晋城| 霸州市| 淮阳县| 德化县| 承德县| 阳江市| 阳泉市| 荣成市| 江津市| 清远市| 同仁县| 华坪县| 荃湾区| 白河县| 会理县| 麻江县| 红原县| 永兴县| 沂源县| 开原市| 肃南| 合川市| 繁昌县| 玉溪市| 济阳县| 天气| 新田县| 松桃| 全南县| 遵义市| 临西县| 孝昌县| 罗平县| 交口县| 武义县| 饶平县| 洪江市| 石渠县| 宜州市| 长宁县|