0

正如这篇文章的标题所说:我正在尝试在我的标签容器中切换一个图标。

我有一个 TabContainer,里面有一些 ContentPanes。

如果我从数据库中获取一些值,我会在 ContentPane 中显示它们并设置 IconClass 以便用户看到有一些数据。

在我的 ContentPane 中,我还有一个删除和一个保存按钮。

如果有一些数据并且按下了删除按钮,我想删除或隐藏选项卡中的图标。

当然,我也想换一种方式。

但是我该怎么做呢?

我尝试使用 registry.byId("myIdOfTheContentPaneWhereTheIconClasswasDefined").className="dijitNoIcon"

没有效果。

有任何想法吗?

4

2 回答 2

0

尝试设置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);
});
于 2015-07-02T17:38:21.820 回答
0

registry.byId返回一个小部件,而不是一个 domNode。

这应该有效: registry.byId("myIdOfTheContentPaneWhereTheIconClasswasDefined").domNode.className="dijitNoIcon

虽然一点都不优雅……

于 2015-07-03T07:50:05.470 回答