wicket中checkBox框中CheckBoxMultipleChoice如何取出页面上选中的值

本文介绍了一个使用 Java 和 Apache Wicket 实现的多选框组件示例,展示了如何自定义显示文本并处理用户选择的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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.markup.html.form.CheckBoxMultipleChoice;
import org.apache.wicket.markup.html.form.ChoiceRenderer;
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_checkBox extends BasePage {

private Form form;
private static List li = new ArrayList();
private static Map NAMES = new HashMap();


static {
li.add("http://www.sina.com.cn");
li.add("http://www.sohu.com");
li.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);
}
};
checkBoxModel cbmodel = new checkBoxModel();
CheckBoxMultipleChoice siteChoice = new CheckBoxMultipleChoice("cb",new PropertyModel(cbmodel,"choList"),li,renderer);

//添加上renderer这个对象
public Test_checkBox() {
super();

form = new Form("myForm"){

@Override
protected void onSubmit() {
List list = cbmodel.getChoList();

for(int i = 0;i<list.size();i++){
System.out.print(list.get(i).toString());

}
super.onSubmit();
}

};

this.add(form);
form.add(siteChoice);

}

}


<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">
<span wicket:id="cb"></span>

<input type="submit" value="tijiao"/>
</form>
</body>
</html>


import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
*
* @author admin
*/
public class checkBoxModel implements Serializable{
private List choList = new ArrayList();

public List getChoList() {
return choList;
}

public void setChoList(List choList) {
this.choList = choList;
}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值