wicket中DropDownChoice的使用及取值



import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import jp.co.infomart.foods.common.admin.page.BasePage;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.form.AjaxButton;
import org.apache.wicket.markup.html.form.ChoiceRenderer;
import org.apache.wicket.markup.html.form.DropDownChoice;
import org.apache.wicket.markup.html.form.Form;
import org.apache.wicket.markup.html.form.IChoiceRenderer;
import org.apache.wicket.model.PropertyModel;

/**
*
* @author admin
*/
public class Test_DropDownChoice  extends BasePage {
        private Form form;
        private static List SITES = new ArrayList();
        private static Map NAMES = new HashMap();
        private DropDownModel1 ddModel;
        static{
        SITES.add("http://www.sina.com.cn");
        SITES.add("http://www.sohu.com");
        SITES.add("http://www.163.com");   
       
        NAMES.put("http://www.sina.com.cn", "新浪");                  //显示汉字
        NAMES.put("http://www.sohu.com", "搜虎");
        NAMES.put("http://www.163.com", "网易");   
        }
       
        IChoiceRenderer renderer = new    ChoiceRenderer() {                        //使用这个接口来显示上面的文字
        public    Object getDisplayValue(Object object) {
        return    NAMES.get(object);
        }
        };
       
        public Test_DropDownChoice(){
            super();
        form = new Form("myForm");
        this.add(form);
        ddModel = new DropDownModel1();
        DropDownChoice siteChoice = new DropDownChoice("sites",new PropertyModel(ddModel,"choList"),SITES,renderer);
        form.add(siteChoice);
        siteChoice.setRequired(true);
        siteChoice.setNullValid(true);
        siteChoice.setDefaultModelObject(ddModel.getChoList());
        AjaxButton ajaxButton = new AjaxButton("ajaxButton") {

            @Override
            protected void onSubmit(AjaxRequestTarget art, Form<?> form) {
               System.out.println(ddModel.getChoList());
            }

            @Override
            protected void onError(AjaxRequestTarget art, Form<?> form) {
                throw new UnsupportedOperationException("Not supported yet.");
            }
        };
        form.add(ajaxButton);
        }
}



<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>test</title>
</head>
<body bgcolor="#FFFFFF" text="#000000" topmargin="0" leftmargin="0" marginwidth="0" marginheight="0" onUnload="fCloseWin()">
    <form wicket:id="myForm">
        <select wicket:id="sites"></select>
        <input type="submit" wicket:id="ajaxButton"/>
    </form>
</body>
</html>



<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>test</title>
</head>
<body bgcolor="#FFFFFF" text="#000000" topmargin="0" leftmargin="0" marginwidth="0" marginheight="0" onUnload="fCloseWin()">
    <form wicket:id="myForm">
        <select wicket:id="sites"></select>
        <input type="submit" wicket:id="ajaxButton"/>
    </form>
</body>
</html>

你可能感兴趣的:(wicket)