我想在dojo的tabcontainer中禁用单个标签。
答案 0 :(得分:5)
以下是我解决此问题的方法:
dojo.style(dijit.byId("tabID").controlButton.domNode,{display:"none"});
和
dojo.style(dijit.byId("tabID").controlButton.domNode,{display:"inline-block"});
出于某种原因,更改disabled属性或调用setDisabled对我没有任何作用。
答案 1 :(得分:1)
答案 2 :(得分:1)
dijit.byId('tab')。controlButton.domNode.disabled = true
答案 3 :(得分:1)
我在另一个帖子中回答了这个问题。基本上它涉及到让jQuery参与其中。对我来说很棒。我有静态创建的所有选项卡(而不是以编程方式),我可以通过jQuery的帮助来操作它们是显示还是隐藏。所有代码都在我的帖子中:
How do I dynamically show and hide an entire TabContainer using DOJO?
答案 4 :(得分:0)
您可以覆盖其默认css以使标签栏不可见。
答案 5 :(得分:0)
dojo.attr(dijit.byId('tab'), "disabled", true);
dijit.byId('tab').onClick = function () { };
答案 6 :(得分:0)
您可以通过设置窗格的disabled属性来禁用标签: 资料来源:https://dojotoolkit.org/reference-guide/1.10/dojo/dom-style.html
pane.set("disabled", true);
示例:
<div data-dojo-type="dijit/layout/TabContainer" style="width: width: 350px; height: 200px">
<div data-dojo-type="dijit/layout/ContentPane" title="My first tab" data- dojo-props="selected:true">
Lorem ipsum and all around...
</div>
<div data-dojo-type="dijit/layout/ContentPane" id="second" title="My second tab">
Lorem ipsum and all around - second...
</div>
<div data-dojo-type="dijit/layout/ContentPane" title="My last tab" data- dojo-props="closable:true">
Lorem ipsum and all around - last...
</div>
</div>
<script type="dojo/require">
registry: "dijit/registry"
</script>
<button type=button onclick="registry.byId('second').set('disabled', !registry.byId('second').get('disabled'));">
toggle tab #2 disabled
</button>
这里唯一的问题是用户看不到它们无法点击它。 你可以使用这些额外的CSS选择器:
.dijitTab.dijitDisabled {
cursor: not-allowed !important;
}
.dijitTab.dijitDisabled > .tabLabel{
cursor: not-allowed !important;
}