文章标题: 发 表 人: 版块:
 
主题:CheckboxSelectionModel相关问题  发表时间: 2008-06-24 06:27
在一个grid列表中加入一个CheckboxSelectionModel,怎么样设置才能在页面显示时默认已经选中其中几项?应用场景:
在用户角色管理中,当前用户仅有角色列表中的部分角色,用户有的角色都要置为选中状态。
代码:
var sm = new Ext.grid.CheckboxSelectionModel({
           singleSelect: false
   });
  var columns = [
     {
           header:'角色名称',
           width:200,
           dataIndex:'name',
           sortable: true,
           editor: new Ext.form.TextField()
       },{
           header:'描述',
           width:200,
           dataIndex:'descn',
           sortable: true,
           editor: new Ext.form.TextField()
       },{ header:"选择",
           width:80,
           dataIndex: "id",
           sortable: true,
           editor: new Ext.form.Checkbox()
       },sm
   ];

   var roleCM = new Ext.grid.ColumnModel(columns);
   var conn = Ext.lib.Ajax.getConnectionObject().conn;
   conn.open("POST", webContext+'/sysManage/userRoleAction.do?methodCall=findRoles', false);
   conn.send(null);
   var data = Ext.util.JSON.decode(conn.responseText);
   var roleStore = new Ext.data.JsonStore({
       root: 'roles',
       data: data,
       fields: ['name', 'descn', 'id'],
       autoLoad: true
   });
 this.grid =  new Ext.grid.GridPanel({
   id:'roleEditGrid',
    store: roleStore,
     cm: roleCM,  
     sm: sm,
     trackMouseOver:false,    
     loadMask: true,
     height:'auto',
     autoScroll:true
 });    
除了这种方法,还有没有别的方法,能够将当前用户的角色信息勾选出来?
相关截图:
相关附件:
user.rar
楼主: zhifan VIP
发表时间: 2008-06-24 06:27
        [引用回复]
刚才查了一下API,没有看到最直接解决你所说问题的接口或方法哈。我说说我的思路吧:
1、从服务器返回得到已经钩选的角色信息roles。
2、遍历表格中的数据,通过store,并与roles进行比较,如果已经选,则调用CheckboxSelectionModel的selectRow(index, true);方法,然后把包括sm选择列这一行加上x-grid3-hd-checker-on样式即可,比如hd.addClass('x-grid3-hd-checker-on');

另外,我看你的表格中专门定义了一列{ header:"选择",
          width:80,
          dataIndex: "id",
          sortable: true,
          editor: new Ext.form.Checkbox()
      }
这样的话,那你其实就不需要这么麻烦了,也不需要那个sm了。只需要把dataIndex指定为一个可以表示当前角色是否已选择的值即可。或者直接循环表格,调用Checkbox的setValue(true)方法即可。
发言人:daxia VIP  楼层:1
发表时间: 2008-06-25 12:09
        [引用回复]
自己定义一个treenodeui ,把是否选中做为其中的一个属性,我前几天就是这么做的
发言人:dcgame VIP  楼层:2
发表时间: 2008-06-25 05:34
其它版块:


标题:CheckboxSelectionModel相关问题



论坛发言支持ubb格式(把HTML页面代码转化为UBB的工具) 添加/删除可视化编辑器
上传附件:
提示:您能上传的附件单个文件最大为2M
  
有新帖的版块
无新帖的版块

Copyright (C) 2008 vifir.com 开源人 渝ICP备06004507号 如有意见请与我们联系