Dear,最近在用zk做项目,遇到一个关于checkbox组件问题解决不了,希望各位能帮忙小女子一下
问题是这样的:经过查询有一组数据查询出来,数据是用Listbox显示出来,在每组数据前有个复选框checkbox,这个checkbox没有绑定,页面上使用multiple="true"没有使用check="true",现在想选中一些记录进行存档操作,想知道如何在后台得到选中的每条记录进行保存,希望能把页面zul的<checkbox/>的设定和后台如何选取说清楚一下,谢谢大家了!!!ZKCheckBoxListBox

解决方案 »

  1.   

    用这个multiple="true"属性,你只要用鼠标选中了,就可以去后台得到啊,如果选两条以上的话就会在后台得到一个字符串,而且是像a,b,c这样的字符串。你只要将他们用spit()方法就可以获得每一个了。 不知道能不能帮到你。
      

  2.   

    请问在后台如何获取这个字符串,目前后台只能得到最后选中的那条记录,只有一条记录,且页面上的<checkbox/>不需要设置其他的吗
      

  3.   


     
        @Listen("onSelect = listbox")
        public void updateMessage() {
            Set<model> selectedModels = ((ListModelList<model>)modelList).getSelection();
            int size = selectedModels.size();
            if ( size > 0 ) {
               ......
            }
        }
      

  4.   

    因为有其他功能这里listbox的model我使用的是List类型,要如何转化成ListModelList类型
      

  5.   

    还是不要把功能都放在一起吧。
    既然是list model就用ListModelList好了。
    如果需要用到别的功能,可以通过接口实现。更好的模块化会让程序更健壮。
      

  6.   

    有没有办法实现是model是List类型,然后实现这个checkbox的功能呢
      

  7.   

    理论上,通过extends和override,你可以定义一个特殊的类来满足你的需求。不过,我不知道你具体功能需求,所以也不好说这么做是不是会更复杂,更耗时。
      

  8.   

    你这个做法应该是适用于设置了check="true"的情况下才能实现的吧,而我的问题是checkbox是页面上独立的一个组件<checkbox checked=""/>,想要实现选中多条数据能够批量存储的功能。这里的页面显示的数据用Listbox展现出来,model是List类型
      

  9.   

    可以给checkbox加id为“checkbox”+recordID。
    然后判断checkbox,如果勾选就获取recordID,
    再把所有需要处理的recordID以数组形式传回后台。
    在后台根据每个id,逐个处理record。
      

  10.   

    比如url是...?recordIDs=ids后台,比如响应button的onclick
        @Listen("onClick=#submit")
        public void updateMessage() {
            List<String> parms = execution.getParameter("recordIDs");
            ......
        }
      

  11.   

    你好!我有点疑问,按你所说,页面上的<checkbox/>需要绑定字段吗,且这里的id设置似乎没办法设定,<checkbox id=""/>这里id没办法将它设为“checkbox”+recordID。还有这里的recordIDs是指哪个?
      

  12.   

    页面zul不能给checkbox的id赋值,id=""会报错,且后台还是得不到值,麻烦能给个例子看一下吗,或者有没有范例可以让我参考一下,Thanks!
      

  13.   

    http://www.zkoss.org/zkdemo/input/checkbox?search=check#
    在官网上找一下,有范例
      

  14.   

    官网上的范例都没有合适的,基本都是使用check="true",而我的问题是不用到check="true"来实现那些功能。这里的checkbox应该是要用到以数组形式传回,可问题是页面上似乎定义不了id,后台也不知该如何得到值