Добрый день.
Имеем по умолчанию кнопку:
{view:“button”, id:“button1”, type:“form”, label: “Button”, click: changeType}.
Как при нажатии на неё поменять {type:“danger”}?
var inputs = $$("form").elements;
for (var i=0; i<inputs.length; i++)
if (inputs[i].name == 'button') alert (inputs[i].config.name);
- view.name - имя компоненты ( button, text, richselect, etc. )
- view.config.name - значение name аттрибута
Большое спасибо. Подскажите ответ на еще один вопрос.
Как перебрать все элементы типа “button” на компоненте “toolbar”.
Нужно что-то типа этого:
function changeButtons()
{
var inputs = document.all.tags(‘INPUT’);
for (var i=0; i<inputs.length; i++)
{
if (inputs(i).type == ‘button’) alert (inputs(i).name);
}
}
Как то так
this.config.type = "danger";
this.refresh();
Спасибо.
Будет чем-либо отличаться такой вариант:
this.define(“type”,“danger”);
this.refresh();
Нет, это по сути один и тот же код.
Спасибо за наводку. У меня получилось только так:
var inputs = $$("form").nc;
for (var i=0; i<inputs.length; i++)
if (inputs[i].view == 'button') alert (inputs[i].value);
$$("form") - это компонент "Toolbar"
p.s. как в комментах форматировать код, чтобы выглядел читабельно…?
Форум поддерживает github-markdown, четыре отступа перед кодом или заключить его в блок из трех тильд ~~~
Важный нюанс, чтобы контрол был внутри element, у контрола должен быть установлен атрибут name
Как еще одно решение ( но только для прямых потомков )
var inputs = $$("form").getChildViews();