Я пытаюсь создать настраиваемый элемент управления, который использует выбор фильтрации додзё. Задайте некоторые свойства для настраиваемого элемента управления, такие как сервер, база данных и представление, которые доступны в выборе фильтрации dojo для получения параметров управления. Поэтому, когда я получаю свойства с помощью команды CompositeData.propertyname, они отображаются как неправильные, как описано ниже. Для поля со списком работает отлично.
Ошибка интерпретатора скрипта, строка = 2, столбец = 45: [ReferenceError] 'композитные данные' не найдены
В приведенной выше строке есть следующая команда:
вар сервер = композитные данные.сервер
Кто-нибудь знает, что это может быть?
Код ниже
<xe:djFilteringSelect
id = "djFilteringSelect1"
disableClientSideValidation = "true">
<xp:selectItems id = "selectItems3">
<xp:this.value><![CDATA[${javascript:
var servidor=compositeData.servidor
var base=compositeData.base
var baseNotes:NotesDatabase=session.getDatabase(servidor,base)
var vi_origem:NotesView=baseSolucao.getView(compositeData.visao);
var nav:NotesViewNavigator=vi_origem.createViewNav();
var entry:NotesViewEntry=nav.getFirst();
var options = new java.util.ArrayList();
var tmpEntry:NotesViewEntry;
var option = new javax.faces.model.SelectItem();
option.setLabel("");
option.setValue("");
options.add(option);
while (null!=entry)
{
tmpEntry=nav.getNext(entry);
var option = new javax.faces.model.SelectItem();
option.setLabel(entry.getColumnValues()[compositeData.coluna]);
option.setValue(entry.getColumnValues()[compositeData.coluna]);
options.add(option);
entry.recycle();
entry=tmpEntry;
}
return options
}]]></xp:this.value>
</xp:selectItems>
</xe:djFilteringSelect>
Привет, Том, я отредактировал описание и ввел код.
Привет, Маркус, только предположение; но рассчитываются ли свойства для настраиваемого элемента управления? Я вижу, что значение selectitems3 рассчитывается на pageLoad ($). Если свойства вычисляются динамически (#), возможно, элементы вычисляются до вычисления свойств. Попробуйте установить значение selectItems3 для динамического вычисления и посмотрите, работает ли оно.
Большой! Это сработало! Я не помню почему, но я должен определить это с помощью выбора фильтрации dojo в другом приложении, и мне пришлось определить создание списка значений в pageLoad. Я не помню причину, но я знаю, что определение как вычисленное динамически дало проблему, возможно, производительность.
Привет, Маркус, не могли бы вы добавить полный код выбора фильтрации, чтобы мы могли посмотреть?