====== Отображение дочерней информации на форм апплетах ======
Добрый день
Стояла следующая задача:
Отобразить на форм апплете Обращений n последних заметок, урезав их до фамилии автора, даты создания и первых 50-ти символов текста. При нажатии на «короткую» заметку, в том же поле вывести полный текст заметки. При повторном нажатии – полный текст скрыть.
Вариант реализации:
1. Пишем Browser Script, который по входящему Row_ID Обращения определяет n последних заметок и заворачивает их в общий html код примерно такого формата:
Текст 1 заметки
Текст 2 заметки
...
Текст n заметки
Полный текст заметки 1
Полный текст заметки 2
...
Полный текст заметки n
Полный текст заметок не отображается на экране до вызова функции mHide(при нажатии на заметку), которая переключает режим отображения
2. Добавляем функцию mHide в файл с темплейтом апплета (либо как-то иначе встраиваем в html структуру документа). Код функции:
function mHide(id) {
if (document.getElementById("n"+id).style.display=='none') {
document.getElementById("n"+id).style.display='inline-block';
document.getElementById("noteMain").style.display='none';
} else {
document.getElementById("n"+id).style.display='none';
document.getElementById("noteMain").style.display='inline-block';
}
}
3. Создаём на БК новое калькулируемое поле, которе будет получать результаты работы БС из пункта 1.
4. Добавляем на апплет новый контрол, указав в параметре «HTML Display Mode» значение DontEncodeData.
Результаты получились такими:
Отображение 4 коротких заявок:
{{:customization:applet:childform1.png?800&direct|}}
Отображение раскрытой полной заявки после нажатия на короткую:
{{:customization:applet:childform2.png?800&direct|}}
--- //[[Andrey.Yaroslavtsev@areon.ua|Ярославцев Андрей]] 2014/12/09 11:08//