Нерелевантная инициализация элемента управления XBL внутри повтора - PullRequest
2 голосов
/ 08 июня 2011

Элемент управления XBL, связанный с нерелевантным узлом, ведет себя по-разному, когда помещается внутри повтора.

Почему событие повтора xforms запускается на нерелевантном узле внутри повтора?init, xforms-enabled и xforms-disabled вызываются по очереди.

https://gist.github.com/1013671

Пример прилагается (related-error.xhtml).Тот же элемент управления за пределами повторения работает, как и ожидалось (релевантный-без-повтор.xhtml)

1 Ответ

1 голос
/ 09 июня 2011

Это также происходит с обычным xforms:repeat, не связанным с XBL.Когда вы делаете xforms:insert, поддерево элементов управления, соответствующих вставленным вами узлам, создается сразу же.В этот момент, поскольку привязки еще не были переоценены, все элементы управления являются релевантными, следовательно, xforms-enabled.Тогда вы получите xforms-disabled, когда оценки будут оценены.Эрик сделал несколько замечаний по этому поводу, в том числе о возможных путях, которыми это можно улучшить / исправить.

Тем временем я хотел бы убедиться, что вы ничего не делаете в своем коде наxforms-enabled, который не отменен на xforms-disabled.Если это так, то ложные xforms-enabled и xforms-disabled не должны вызывать проблем, кроме ненужного замедления.

...