ExtJs在面板上进行了布局

时间:2012-07-31 10:28:22

标签: extjs layout grid panel

我在面板内有一个网格。最初,我将在加载应用程序时将网格渲染到面板,并在特定的用户操作上(例如点击网格:2)我将使用hide()隐藏面板内的网格。当网格被隐藏时,我将使用panel.update(html)在面板中显示一条消息。现在再次针对特定的用户操作(比如点击网格:3)我需要在面板内显示网格。我尝试使用grid.show(),grid.setvisible()和panel.doLayout(),但都没有解决。以下是示例代码

    if (condition1){
      panelGrid.setVisible(false);
      panel.update("htmltext");
    } else {
      panel.doLayout();
      panelGrid.setVisible(true);
    }

这在firefox中工作正常。但在IE8中它不起作用并显示错误消息“ext-base.js中的未指定错误”

任何人对此都有任何想法吗?

2 个答案:

答案 0 :(得分:1)

感谢您的回答。我自己想出了逻辑。

我使用了add()而不是panel.update()。

if (condition1){
  panelGrid.setVisible(false);
  panel.remove('sample', true);
  panel.add(
   {
     id: 'sample'
     html:'htmltext'
   });
} else {
  panel.remove('sample', true);
  panelGrid.setVisible(true);
}

答案 1 :(得分:0)

在执行panel.update时覆盖面板的HTML,因此网格不再存在。