Переключить значок в 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
хотя это совсем не элегантно...