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

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

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

    隨筆-348  評(píng)論-598  文章-0  trackbacks-0
    這個(gè)方法不是太完美,但可以解決JSF的DataTable和SelectOneRadio搭配問(wèn)題。每條記錄每一行一個(gè)radio進(jìn)行單選,只會(huì)選中一條。
    首先,在頁(yè)面中datatable的column中加入
                                                <h:selectOneRadio id="xx" value="#{entrance.test}">
                                                    
    <f:selectItem itemValue="#{obj.corpOutInfo.coiId}" itemLabel="#{obj.corpOutInfo.corpName}"/>
                                                
    </h:selectOneRadio>
    然后加入一段jquery的代碼用于在用戶切換選擇的時(shí)候,先將所有radio的checked狀態(tài)都置為false。
    <script type="text/javascript">
            jQuery.noConflict();
    //與JSF搭配需要這句話,不然會(huì)有沖突
            jQuery(document).ready(function() {

                jQuery(
    ":radio").click(function(){
                    update(
    this);

                 }
    );
            }
    );
            
    </script>
            
    <script type="text/javascript">
            
    function update(currentRadio)
            
    {

                
    var parentTables = jQuery(currentRadio).parents("table"); 
                
    var parentTable = parentTables[0];    

                
    var childDivs = jQuery(parentTable).next("div");        
                
    var childDiv = childDivs[0];        

                jQuery(childDiv).contents().find(
    ":radio").each(function() {
                    
    this.checked = false;
                }
    );
                
                currentRadio.checked 
    = true;
            }


            
    </script>

    后臺(tái)綁定一個(gè)屬性,但這個(gè)屬性的set方法會(huì)被調(diào)用多次,但只有一次是有值的,所以用戶選擇了哪一行也好獲得。
        private String test;
        
        
    public String getTest() {
            
    return test;
        }


        
    public void setTest(String test) {
            System.out.println(
    "=========================" + test);
        }


        
    問(wèn)題算是解決了,實(shí)現(xiàn)很簡(jiǎn)單,但并不太完美。因?yàn)楹笈_(tái)的那個(gè)set方法會(huì)觸發(fā)很多次,次數(shù)跟當(dāng)前的radio數(shù)量一致,雖然不怎么影響性能,但用著總覺得不爽,后面再完善下。


    ---------------------------------------------------------
    專注移動(dòng)開發(fā)

    Android, Windows Mobile, iPhone, J2ME, BlackBerry, Symbian
    posted on 2009-01-11 16:36 TiGERTiAN 閱讀(5452) 評(píng)論(5)  編輯  收藏 所屬分類: JavaJSF

    評(píng)論:
    # re: JSF中DataTable和SelectOneRadio搭配,每條記錄每一行一個(gè)radio進(jìn)行單選的解決辦法 2009-01-12 12:39 | 千里冰封
    直接用h:outputText畫出HTML語(yǔ)句,這樣豈不是更好,然后在后臺(tái)從parameter里面去取這個(gè)單選的參數(shù),應(yīng)該也是一種辦法,呵呵  回復(fù)  更多評(píng)論
      
    # re: JSF中DataTable和SelectOneRadio搭配,每條記錄每一行一個(gè)radio進(jìn)行單選的解決辦法[未登錄] 2009-01-12 21:38 | tigertian
    @千里冰封
    有個(gè)問(wèn)題,就是你這個(gè)方法只能在jsf 1.2中使用,貌似1.1中沒有escape屬性,所以默認(rèn)escape為true,在output里面畫不出來(lái),會(huì)被Html Encode掉,如果單獨(dú)使用<input type="radio">控件,會(huì)發(fā)現(xiàn)jsf 1.1中的datatable無(wú)法把這個(gè)純html控件包含進(jìn)來(lái)。而我目前碰到的應(yīng)用環(huán)境正是jsf 1.1,所以我也想找到一個(gè)更好的辦法,大家討論討論哈。  回復(fù)  更多評(píng)論
      
    # re: JSF中DataTable和SelectOneRadio搭配,每條記錄每一行一個(gè)radio進(jìn)行單選的解決辦法 2009-01-13 08:48 | TiGERTiAN
    @千里冰封
    今天測(cè)試了一下,1.1版本的outputText也有escape屬性,但我忘記是哪個(gè)控件跟1.2不一樣沒有escape屬性的,有了之后,就可以畫出來(lái)了。  回復(fù)  更多評(píng)論
      
    # re: JSF中DataTable和SelectOneRadio搭配,每條記錄每一行一個(gè)radio進(jìn)行單選的解決辦法 2009-12-27 21:28 | frankie
    # re: JSF中DataTable和SelectOneRadio搭配,每條記錄每一行一個(gè)radio進(jìn)行單選的解決辦法 2009-12-27 22:17 | TiGERTiAN
    @frankie
    謝謝哈,不過(guò)我用的是sun的實(shí)現(xiàn)。  回復(fù)  更多評(píng)論
      
    主站蜘蛛池模板: 精品福利一区二区三区免费视频| a级日本高清免费看| 未满十八私人高清免费影院| 一个人看的免费高清视频日本 | 最新亚洲精品国偷自产在线| 亚洲人成网站在线播放2019| 亚洲精品V天堂中文字幕| 猫咪免费观看人成网站在线| 国产亚洲精品免费视频播放| 亚洲精品在线免费看| 日韩免费视频播播| 亚洲中文字幕无码永久在线| 亚洲色大成网站www永久| 亚洲最大的成人网| www免费插插视频| 99视频在线看观免费| 日本免费电影一区| 亚洲精品夜夜夜妓女网| 亚洲高清中文字幕免费| 一个人免费观看www视频| 最近中文字幕mv免费高清在线 | 精品无码免费专区毛片| 俄罗斯极品美女毛片免费播放| 国产亚洲福利精品一区| 亚洲精品免费网站| 中文字幕在线免费播放| 成人免费视频77777| 久久精品国产亚洲5555| 亚洲婷婷第一狠人综合精品| 国产福利电影一区二区三区,免费久久久久久久精 | 免费观看成人毛片a片2008| 日韩a在线观看免费观看| 亚洲av无码一区二区乱子伦as| 亚洲heyzo专区无码综合| 99爱在线精品视频免费观看9| 国产成人在线观看免费网站| 亚洲久本草在线中文字幕| 男女超爽视频免费播放| 亚洲免费在线视频播放| 中文字幕亚洲综合久久男男 | 亚洲AV本道一区二区三区四区|