Как проверить, активна ли вкладка с вкладками Dojo - PullRequest
1 голос
/ 30 июня 2011

Как проверить, активна ли вкладка с контейнером вкладок dojo? (В JQuery это просто ... вы можете использовать что-то вроде этого

if($("#accordion").accordion('option', 'active') == mytabNumber){

В dojo's, dijit.layout.TabContainer должен быть похожий способ сделать это без написания функции litener и всего этого джаза.

возможно что-то вроде ...

if( dojo.byId("tab2"), {selected:true} ){

Заранее спасибо!

Ответы [ 3 ]

5 голосов
/ 30 июня 2011

Вы можете сравнить виджет для вкладки со свойством selectedChildWidget контейнера вкладок, т. Е .:

dijit.byId('tabContainer').selectedChildWidget == dijit.byId('tab2')

2 голосов
/ 30 июня 2011

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

var tab2 = dijit.byId('tab2');
if (tab2.get('selected')) { /* do stuff */ }

Я создалболее подробный пример на http://jsfiddle.net/brianarn/ws28T/

0 голосов
/ 21 февраля 2013

Вот более полный код ответа, который дает окружающий код для Dojo 1.8:

require(["dijit/registry",  "dojo/ready", "dojo/domReady!"], function (registry, ready) {
    ready(function () { //wait till dom is parsed into dijits
        if (dijit.byId('tabContainer').selectedChildWidget == dijit.byId('tab2'))
            alert('Yes, we found it!');
    });
});
...