Переключить значок в tabcontainer

Как уже написано в заголовке этого поста: я пытаюсь переключить значок в моем tabcontainer.

Я получил TabContainer с некоторыми ContentPanes в нем.

Если я получаю некоторые значения из базы данных, я показываю их в ContentPane и устанавливаю IconClass, чтобы пользователь видел, что есть некоторые данные.

В моем ContentPane я также получил кнопку удаления и сохранения.

Если были какие-то данные и нажата кнопка удаления, я хотел бы удалить или скрыть значок во вкладке.

Конечно, я хочу сделать и другой путь.

Но как мне это сделать?

Я пробовал это с registry.byId("myIdOfTheContentPaneWhereTheIconClasswasDefined"). ClassName="dijitNoIcon"

без эффекта.

Есть идеи?

2 ответа

Попробуйте установить iconClass вместо className,

Доказательство правильности концепции:

require([
    'dijit/layout/TabContainer',
    'dijit/layout/ContentPane'
], function(TabContainer, ContentPane){
    var container = new TabContainer({ id: 'container' }).placeAt(document.body);
    var pane = new ContentPane({
        iconClass: 'dijitIconSave',
        title: 'Tab'
    }).placeAt(container);
    container.startup();

    setTimeout(function () {
        pane.set('iconClass', '');
    }, 2000);
});

registry.byId возвращает вам виджет, а не domNode.

Это должно работать:registry.byId("myIdOfTheContentPaneWhereTheIconClasswasDefined").domNode.className="dijitNoIcon

хотя это совсем не элегантно...

Другие вопросы по тегам