ZK,checkbox组件的取值
Dear,最近在用zk做项目,遇到一个关于checkbox组件问题解决不了,希望各位能帮忙小女子一下
问题是这样的:经过查询有一组数据查询出来,数据是用Listbox显示出来,在每组数据前有个复选框checkbox,这个checkbox没有绑定,页面上使用multiple="true"没有使用checkmark="true",现在想选中一些记录进行存档操作,想知道如何在后台得到选中的每条记录进行保存,希望能把页面zul的<checkbox/>的设定和后台如何选取说清楚一下,谢谢大家了!!!
------解决方案--------------------用这个multiple="true"属性,你只要用鼠标选中了,就可以去后台得到啊,如果选两条以上的话就会在后台得到一个字符串,而且是像a,b,c这样的字符串。你只要将他们用spit()方法就可以获得每一个了。 不知道能不能帮到你。
------解决方案--------------------
@Listen("onSelect = listbox")
public void updateMessage() {
Set<model> selectedModels = ((ListModelList<model>)modelList).getSelection();
int size = selectedModels.size();
if ( size > 0 ) {
......
}
}
------解决方案--------------------理论上,通过extends和override,你可以定义一个特殊的类来满足你的需求。
不过,我不知道你具体功能需求,所以也不好说这么做是不是会更复杂,更耗时。
------解决方案--------------------可以给checkbox加id为“checkbox”+recordID。
然后判断checkbox,如果勾选就获取recordID,
再把所有需要处理的recordID以数组形式传回后台。
在后台根据每个id,逐个处理record。
------解决方案--------------------比如url是...?recordIDs=ids
后台,比如响应button的onclick
@Listen("onClick=#submit")
public void updateMessage() {
List<String> parms = execution.getParameter("recordIDs");
......
}
------解决方案--------------------
你再看看网上其他的前后台交互的例子,应该能找到一些的。