Как скрыть dijit/form / button?

Я думаю, что это здравый смысл, что предоставление простого способа Скрыть/показать и включить / отключить кнопку, но я не могу найти документ, который описывает dojo сделал такую вещь. В любом случае, я надеюсь, что это моя вина, что я пропустил что-то, пока гуглил, спасибо!

следующая кодировка-это то, что я пробовал, но они просто делают текст кнопки невидимым:

dojo.style(btnInsert, {'visibility':'hidden'});
dojo.style(btnInsert, {'display':'none'});

обновить вопрос:

в oborden2:

Я пробовал ваш код, результат такой же, как и приведенный выше код, вот захваченный экран:

enter image description here

Для MiBrock:

Я также попробовал ваш код и получить результат так же, как и приведенный выше код: enter image description here

3 ответов


виджеты формы в Dijit являются особенными. Для всех обычных виджетов Dijit,domNode (внешний узел) виджета получает id собственность. Однако, с виджетами формы,focusNode (что соответствует <input> элемент), а не получает ID, так что такие вещи, как <label for="foo"> работать должным образом. В этом случае внешний узел не имеет идентификатора, и вы на самом деле просто скрываете внутренний элемент ввода HTML.

если у вас уже есть ссылка на виджет:

require([ 'dojo/dom-style' ], function (domStyle) {
    domStyle.set(widget.domNode, 'display', 'none');
});

если у вас есть только ссылка на идентификатор виджета / исходного узла DOM:

require([ 'dojo/dom-style', 'dijit/registry' ], function (domStyle, registry) {
    domStyle.set(registry.byId(nodeId).domNode, 'display', 'none');
});

попробовать

require(["dojo/dom-style","dojo/domReady!"], function(domStyle){
    domStyle.set(dojo.byId(domNode),'display','none');
});

переменная "domNode" остается для идентификатора узла, на который следует повлиять. Вот как мы это делаем.

С Уважением, Мирьям


попробуйте использовать модуль Toggler

require(["dojo/fx/Toggler"], function(Toggler),{
    // Create a new Toggler with default options
    var toggler = new Toggler({
        node: "btnInsert"
    });

    // Hide the node
    toggler.hide();

    // Show the node
    toggler.show();
});

http://dojotoolkit.org/reference-guide/1.9/dojo/fx/Toggler.html

Я полагаю, что вы хотите связать это событие с помощью модуль. Свяжите его с любым условием, которое вызывает необходимость скрытия кнопки.