Ext JS网格面板间隔删除

时间:2012-05-29 10:13:56

标签: javascript extjs extjs4

我对Ext JS 4很新,我创建了一个带有固定列的Panel。似乎存在某种错误(如某些论坛上所述),如果我修复了一列,则会在其顶部自动插入 spacer (xtype:tbspacer),从而破坏表格的对齐方式(如果这只是配置错误的问题,请让我知道)。我想做的是删除那个垫片。

为了做到这一点,我必须选择它,但它没有“静态”id,这意味着如果我对视图进行任何修改,则spacer会获得另一个id,所以我需要一个方法来选择它而不使用id。我尝试过这样的事情:

list.query('.tbspacer')[0].setHeight(0);

其中list是面板。但它似乎没有用。 list.query()方法返回一个空数组。我在尝试选择 textfield 时遇到了同样的问题。

我错过了什么,还是只是另一个错误?

这是我创建锁定列的方式(没什么特别的):

{
  header: headerName, 
  dataIndex: i, 
  locked: true
}

编辑以下是截图:

enter image description here

编辑这个间隔不应该首先存在,它可能(可能仍然是?)在该版本的框架中。请参阅我的其他问题here。我将这里唯一的答案标记为已被接受,因为它似乎可以解决此问题中提到的问题。

1 个答案:

答案 0 :(得分:1)

首先,您正在进行错误的查询。它应该只是tbspacer,没有点。第二,为什么不只是setHeight(0)而不是destroy呢?

list.query('tbspacer')[0].destroy();