<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 119  文章 - 3173  trackbacks - 0
    <2010年12月>
    2829301234
    567891011
    12131415161718
    19202122232425
    2627282930311
    2345678

    交友莫獨酒,茅臺西鳳游。
    口干古井貢,心徜洋河流。
    稱多情杜康,趟無量雙溝。
    贊中華巍巍,無此不銷愁。

    常用鏈接

    留言簿(68)

    隨筆分類(136)

    隨筆檔案(122)

    最新隨筆

    搜索

    •  

    積分與排名

    • 積分 - 525126
    • 排名 - 93

    最新評論

    用struts2的標簽checkboxlist可以很方便的用生成checkbox組,但是讓其默認選中指定checkbox卻是非常麻煩. 

    之前有2種方案: 
    第一種是修改struts2 tag的源代碼. 
    比如http://jolestar.javaeye.com/blog/160360 
    第二種就是徹底妥協,在action里面把list bean轉成數組,賦給checkboxlist的value屬性. 

    這兩種solution都不是那么優雅,作為一個有房貸沒希望的IT民工我不禁問自己: 
    怎么能對自己的要求這么低呢? 怎么能應付了事呢? 

    翻文檔,研究了下ognl的語法,終于讓我找到了一種方便的寫法. 


    JavaBean 
    1. public class Operate extends BaseBean {  
    2.     private long id;  
    3.     private String name;  
    4. }  


    Action中初始化allOpList和myOpList. 
    1. private List<Operate> myOpList;  
    2. private List<Operate> allOpList;  


    前臺jsp用strtus2標簽生成checkboxlist 
    1. <s:checkboxlist name="myOpList.id" list="allOpList" listValue="name"  listKey="id"   
    2. value="myOpList.{#this.id}"/>  



    checkboxlist標簽用allOpList的內容生成checkbox, 并且用myOpList的值選中默認. 
    并且當頁面提交的時候,又能自動把checkbox的選中情況,賦給myOpList.Operate.id屬性. 

    這樣從后到前到再到后,全都是用list bean去完成,用法統一,不要轉換,全部操作的是bean而不是數組. 


    精華在于myOpList.{#this.id}這個ognl表達式,自動生成[4, 11]這種格式的數組. 


    引申一下,ognl的語法強大到可以myOpList.{?#this.enable > 0}來做過濾,看著有點Jquery的味道,非常好用. 

    有同志會說,這種過濾沒有什么意義,不如在后臺sql里面做. 
    假設一個應用場景: 
    全部用戶信息是放在cache里面的list,根據前一個頁面來過濾男女,然后顯示. 
    這時候這個過濾表達式就發揮作用了,不用您在后臺一個一個過濾重新組裝list了. 
    userInfoist.{?#this.sex > 0} 


    簡潔而優雅,這下能過自己這關了. 


    posted on 2010-12-02 14:09 交口稱贊 閱讀(4011) 評論(5)  編輯  收藏 所屬分類: struts

    FeedBack:
    # re: 原創小技巧解決list做strtus2標簽checkboxlist默認值無法選中的問 2010-12-02 14:50 何楊
    久違,兩年不見了。  回復  更多評論
      
    # re: 原創小技巧解決list做strtus2標簽checkboxlist默認值無法選中的問 2010-12-02 16:17 交口稱贊
    ......................
    低調  回復  更多評論
      
    # re: 原創小技巧解決list做strtus2標簽checkboxlist默認值無法選中的問[未登錄] 2010-12-02 17:47 GreatGhoul
    的確是一種比較爽的實現呀。  回復  更多評論
      
    # re: 原創小技巧解決list做strtus2標簽checkboxlist默認值無法選中的問 2010-12-03 09:32 交口稱贊
    必須的,批量初始化批量提交,結合我整的框架用起來愜意啊.  回復  更多評論
      
    # Air Retro Jordan 2010-12-03 16:23 Air Retro Jordan
    好好學習  回復  更多評論
      
    主站蜘蛛池模板: 亚洲天堂男人影院| 97无码人妻福利免费公开在线视频| 国产精品视_精品国产免费| 国产亚洲视频在线播放大全| 亚洲亚洲人成综合网络| 日本视频一区在线观看免费| 亚洲AV第一成肉网| 亚洲成A人片在线观看无码不卡| 亚洲国产精品免费在线观看| 久久精品国产亚洲AV天海翼| 久久亚洲精品视频| 青青青青青青久久久免费观看| 中文字幕不卡免费视频| 亚洲最大av资源站无码av网址| 国产av无码专区亚洲av果冻传媒 | 亚洲AV无码专区国产乱码不卡| 中文字幕亚洲无线码| 青青青国产在线观看免费| 一级毛片a免费播放王色| 亚洲入口无毒网址你懂的| 亚洲日韩欧洲无码av夜夜摸| 女人18特级一级毛片免费视频| 久草免费福利在线| 亚洲熟妇无码一区二区三区导航 | 亚洲一区二区三区亚瑟| 亚洲女同成人AⅤ人片在线观看| 中文免费观看视频网站| 国产性生大片免费观看性| 鲁死你资源站亚洲av| 亚洲国产精品张柏芝在线观看| 精品国产亚洲一区二区在线观看| 一二三四视频在线观看中文版免费| 特级做A爰片毛片免费看无码| 国产精品亚洲综合天堂夜夜| 亚洲人成网站在线观看播放动漫| 亚洲乱码一区二区三区在线观看 | 国产jizzjizz视频全部免费| 国产成人免费网站| 亚洲香蕉免费有线视频| 无码精品人妻一区二区三区免费看| 一级一片免费视频播放|