Как динамически добавить новую свернутую панель к аккордеону в Ext? - PullRequest
0 голосов
/ 21 октября 2010

У меня есть Аккордеон в ExtJS, и я хочу динамически добавлять в него новые Панели. Панели должны быть свернуты, когда они появляются. Код, который у меня есть сейчас, создаст панели, но HTML-код на каждой панели не будет отображаться.

var loadoutput = new Ext.Panel({
 title: 'Log',
 renderTo: 'logout',
 layout: 'accordion',
 defaults: {
  bodyStyle: 'padding:10px',
  collapsed: true
 },
 layoutConfig: {
  fill: true,
  animate: true
 }
});

function logOutput(_title, _html) {
 temp = new Ext.Panel();
 temp.title = _title;
 temp.html = _html;
 temp.collapsed = true;
 loadoutput.items.add(temp);
 loadoutput.doLayout();
}

 logOutput("Well, that was interesting", "Dude, what's up? <br/>Hey hey hey<br/>AAAAAH.");
 logOutput("Hello", "Dude, what's up? <br/>Hey hey hey<br/>AAAAAH.");
 logOutput("What?", "Dude, what's up? <br/>Hey hey hey<br/>AAAAAH.");
 logOutput("Cat", "Dude, what's up? <br/>Hey hey hey<br/>AAAAAH.");

Ответы [ 2 ]

0 голосов
/ 22 октября 2010

Итак, этот код работает выше. items.add или добавьте обе работы. Одна проблема - boxMinHeight. Мне нужно установить его вручную, я думаю.

0 голосов
/ 22 октября 2010

Мне кажется, проблема в том, что вы используете метод добавления "items" (это Ext.util.MixedCollection) вместо метода добавления Ext.Panel.

Попробуйте это:

loadoutput.add(temp);
...