【问题标题】:How to dynamically set the grids CheckBox Selection Model in ExtJs4?如何在 ExtJs4 中动态设置网格 CheckBox 选择模型?
【发布时间】:2014-04-29 01:05:11
【问题描述】:

这从my previous question开始。
我使用 CheckBox 选择模型初始化了一个网格,但是当我重新配置网格时,Check Box 选择模型就消失了。
我想要做的是在重新配置网格列后将 CheckBox 选择模型动态添加到网格中,并直观地显示它。

我尝试过这样的事情:

var sm = new Ext.selection.CheckboxModel();
grid.selModel = sm;
grid.doLayout();

【问题讨论】:

  • 嗨 shane87,您找到解决此问题的方法了吗?你是怎么解决的?
  • 嗨@hienvd,这似乎是一个错误,已根据下面 Marc Abbey 的回答修复

标签: javascript extjs grid extjs4


【解决方案1】:

这对我有用。 SelectionModel 动态标志

//dynamically change, true or false, as the case 
selectionModel = true

var sm = {} // Selection Model

if (selectionModel){
    sm = Ext.create('Ext.selection.CheckboxModel')
}

var grid = Ext.create('Ext.grid.Panel', {
    selModel: sm,         
    frame: true,
    store: store,
    columns: columns,
    // more code ....
})

【讨论】:

    【解决方案2】:

    如果您使用的是 ExtJS4,只需在重新配置后执行 grid.getSelectionModel() 并查看它是否有效。
    您不必对返回的值任何事情。 (如果不行,调试看看这个方法返回了什么。是CheckboxModel的实例吗?)

    【讨论】:

    • 谢谢。是的,它返回 CkeckboxModel 的一个实例。我需要某种方式来重新显示它吗?
    • 我在想 grid.getSelectionModel() 会在返回之前重新配置 selModel。不是吗? (您需要在重新配置后调用它)
    • 感谢您的回复。但这不起作用..还有其他想法吗?我真的坚持这个:(
    【解决方案3】:
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-07
    • 2015-07-06
    • 2012-06-01
    • 1970-01-01
    • 2013-08-25
    • 1970-01-01
    相关资源
    最近更新 更多