Исключения предназначаются для событий, которые являются аварийными поведениями, ошибками, отказами и таким. Функциональное поведение, пользовательская ошибка, и т.д., должно быть обработано логикой программы вместо этого. Начиная с плохой учетной записи или пароля ожидаемая часть логического потока в стандартной программе входа в систему, это должно быть в состоянии обработать те ситуации без исключений.
вам следует сделать
dijit.byId("tabContainer").domNode.style.display = 'block'
или, возможно,
dijit.byId("tabContainer").domNode.style.visibility = 'hidden';
еще лучше
Что ж, я не решил эту проблему, но я нашел обходной путь ... Создание TabContainer для события щелчка вместо того, чтобы скрывать его при загрузке страницы и затем показывать его в событие щелчка.
HTML:
<div id="tabContainer">
</div>
JS:
var tabContainer = new dijit.layout.TabContainer({id:"tabContainer", style:"width:500px;height:200px;"}, dojo.byId('tabContainer'));
//add tabs
tabContainer.startup();
После того, как вы установили display: block, сделайте следующее:
dijit.byId('tabContainer').resize();
dijit.layout виджеты часто не размещаются должным образом, если они display: none (а иногда даже когда видимость: скрыто). Вы должны возиться с Firebug, пока не поймете, что работает!
t размещаются правильно, если они display: none (а иногда даже когда visibility: hidden). Вы должны возиться с Firebug, пока не поймете, что работает! t размещаются правильно, если они display: none (а иногда даже когда visibility: hidden). Вам придется возиться с Firebug, пока не поймете, что работает!Для этого есть решение. Если вы хотите показать TabContainer calll:
dijit.byId("tabContainer").domNode.style.display = 'block';
dijit.byId("tabContainer").resize();
и использовать «none», если хотите скрыть TabContainer.
Это работает для меня, но это правда, это не очевидно :)
Первое (установка style.display = "none"
) правильно. Вместо
... затем устанавливая style.display = "block"
, вы должны просто вызвать .set_visible
JS-метод ajax TabContainer, когда «... пользователь нажимает кнопку», например:
$find('<%= Tabs.ClientID %>').set_visible(true);