五月综合缴情婷婷六月,色94色欧美sute亚洲线路二,日韩制服国产精品一区,色噜噜一区二区三区,香港三级午夜理伦三级三

您現(xiàn)在的位置: 365建站網(wǎng) > 365文章 > ice:selectOneMenu應(yīng)用

ice:selectOneMenu應(yīng)用

文章來源:365jz.com     點(diǎn)擊數(shù):321    更新時(shí)間:2009-09-17 10:25   參與評(píng)論

ice:selectOneMenu是一個(gè)下拉框列表,可以單選一個(gè)值。這個(gè)tag還是有點(diǎn)復(fù)雜,官方文檔也不是很仔細(xì),浪費(fèi)了我不少時(shí)間。下面是例子代碼:


    配合f:selectItem,我們可以靜態(tài)的提供下拉列表中的候選值。這里要注意的是,valueChangeListener事件的處罰必須要加上partialSubmit="true"這個(gè)條件。這是文檔中沒有描述的。immediate="true"是無效的。
    現(xiàn)在我們看看動(dòng)態(tài)產(chǎn)生下拉列表值的例子:

    這里TestBean.values對(duì)應(yīng)的是SelectItem[],代碼如下:
public class TestBean {

    /** Creates a new instance of TestBean */
    public TestBean() {
        values=new SelectItem[2];
        values[0]=new SelectItem();
        values[0].setLabel("A1");
        values[0].setValue(1);
        values[1]=new SelectItem();
        values[1].setLabel("A2");
        values[1].setValue(2);
    }
    
    private SelectItem[] values;

    /**
     * @return the values
     */
    public SelectItem[] getValues() {
        return values;
    }

...

    在我的其他應(yīng)用程序中,List也是可以使用的,但是很奇怪,在這個(gè)測(cè)試工程里總是報(bào)錯(cuò)。姑且認(rèn)為是icefaces1.8.1的一個(gè)bug吧。


    總是要使用partialSubmit="true"才能讓ValueChangeEvent事件生效,在某些場(chǎng)合是有限制的。比如,如果你在前面增加一個(gè)ice:inputText來輸入姓名,不要指望在ValueChangeEvent事件處理函數(shù)中得到這個(gè)值,因?yàn)椴糠痔峤皇遣粫?huì)將Form中的其他值提交到服務(wù)端的。解決方案有兩個(gè),一個(gè)是在新增的ice:inputText中也應(yīng)用partialSubmit="true"屬性,這樣當(dāng)輸入完畢,焦點(diǎn)從ice:inputText中移出的時(shí)候,setXX方法就可以被調(diào)用,然后ValueChangeEvent事件處理函數(shù)就可以使用輸入值。還有一種方案就是增加javaScript調(diào)用,造成整個(gè)form提交。下面是第一種方法的代碼:


    public void changeValue(ValueChangeEvent event){
        result=name;
    }

    private String name;

    /**
     * @return the name
     */
    public String getName() {
        return name;
    }

    /**
     * @param name the name to set
     */
    public void setName(String name) {
        this.name = name;
    }

    private String result;

    /**
     * @return the result
     */
    public String getResult() {
        return result;
    }

    /**
     * @param result the result to set
     */
    public void setResult(String result) {
        this.result = result;
    }













如對(duì)本文有疑問,請(qǐng)?zhí)峤坏浇涣髡搲瑥V大熱心網(wǎng)友會(huì)為你解答?。?點(diǎn)擊進(jìn)入論壇

發(fā)表評(píng)論 (321人查看,0條評(píng)論)
請(qǐng)自覺遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴(yán)禁發(fā)布色情、暴力、反動(dòng)的言論。
昵稱:
最新評(píng)論
------分隔線----------------------------

其它欄目

· 建站教程
· 365學(xué)習(xí)

業(yè)務(wù)咨詢

· 技術(shù)支持
· 服務(wù)時(shí)間:9:00-18:00
365建站網(wǎng)二維碼

Powered by 365建站網(wǎng) RSS地圖 HTML地圖

copyright © 2013-2024 版權(quán)所有 鄂ICP備17013400號(hào)