Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
При вызове ZEN-страницы через URL передаются параметры, в XData для <form> указан параметр OnLoadForm="LoadSettings", в методе "LoadSettings" параметры из URL содержатся в свойствах страницы и присваиваются соотв. компонентам. Всё хорошо, НО после обновления формы по таймеру установленные свойсва страницы и соотв. компоненты обнуляются. Вопрос. Как правильно сохранить параметры из URL и передать их в обновлённую форму? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 12:23 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
vcoshakобновления формы по таймеру Как конкретно обновляется форма? Форма или таки страница целиком? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 12:52 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
krvsa, На странице есть только одна форма, обновление происходит автоматически. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 12:55 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
vcoshak , т.е. обновляется таки страница. Про "атоматически" нужно подробнее... Код этого "обновления" можно увидеть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 12:58 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
vcoshakКак правильно сохранить параметры из URL и передать их в обновлённую форму? Тут вопрос скорее всего нужно будет "развернуть" так: - Как правильно сформировать новый УРЛ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 13:00 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
krvsa, вот код (несущественные детали удалены): /// Created using the page template: Default Class MyApp.UI.Settings Extends %ZEN.Component.page { ... Property ClientIP As %ZEN.Datatype.string(ZENURL = "IP"); ... XData Contents [ XMLNamespace = "http://www.intersystems.com/zen" ] { <page xmlns="http://www.intersystems.com/zen" title=""> ... <vgroup width="90%" align="center" valign="middle"> <form id="frmSettings" OnLoadForm="LoadSettings" width="90%" align="center" layout="vertical" cellStyle="padding: 3px;" > ... <fieldSet id="fieldSetOptions" ... align="left" cellStyle="padding: 6px;"> <checkbox caption="Show Messages" id="chkShowMsg"/> ... </fieldSet> ... <submit caption="Save Settings" onclick="zenPage.SaveSettings();"/> </form> Method LoadSettings(pKey As %String, ByRef pValues As %String) As %Status [ ZenMethod ] { set ip="", msg="1" ; set ip=%page.ClientIP if ip'="" { d ##class(Utils).LoadOptions(ip, .msg) d ..%SetValueById("chkShowMsg", msg) } } Method SaveSettings() [ ZenMethod ] { set ip=%page.ClientIP if ip'="" { set msg=..%GetValueById("chkShowMsg") ... d ##class(Utils).SaveOptions(ip,msg) } Quit } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 13:18 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
vcoshakkrvsa, вот код (несущественные детали удалены): /// Created using the page template: Default Class MyApp.UI.Settings Extends %ZEN.Component.page { ... Property ClientIP As %ZEN.Datatype.string(ZENURL = "IP"); ... XData Contents [ XMLNamespace = "http://www.intersystems.com/zen" ] { <page xmlns="http://www.intersystems.com/zen" title=""> ... <vgroup width="90%" align="center" valign="middle"> <form id="frmSettings" OnLoadForm="LoadSettings" width="90%" align="center" layout="vertical" cellStyle="padding: 3px;" > ... <fieldSet id="fieldSetOptions" ... align="left" cellStyle="padding: 6px;"> <checkbox caption="Show Messages" id="chkShowMsg"/> ... </fieldSet> ... <submit caption="Save Settings" onclick="zenPage.SaveSettings();"/> </form> Method LoadSettings(pKey As %String, ByRef pValues As %String) As %Status [ ZenMethod ] { set ip="", msg="1" ; set ip=%page.ClientIP if ip'="" { d ##class(Utils).LoadOptions(ip, .msg) d ..%SetValueById("chkShowMsg", msg) } } Method SaveSettings() [ ZenMethod ] { set ip=%page.ClientIP if ip'="" { set msg=..%GetValueById("chkShowMsg") ... d ##class(Utils).SaveOptions(ip,msg) } Quit } Через какое-то время форма сама собой "очищеется" и все компоненты (в примере выше это "chkShowMsg") инициализируются пустыми значениями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 13:23 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
Я понимаю так, что при перезагрузке страницы в URL отсутствуют параметры, т.е. их нужно как-то снова передавать в URL, или совсем отключить перезагрузку (как?). Может быть, как вариант, при первичной загрузке сначала заполнять какой-то объект (%session ?) и уже из него загружать компоненты? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 13:32 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
vcoshakЧерез какое-то время форма сама собой "очищеется" Т.е. никакого "таймера" и нет? Поскольку в коде я его не заметил... Почему тогда статаешь что страница перезагрузилать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 13:48 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
статаешь - читать как "считаешь". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 13:48 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
vcoshak , вот почитай ... Может такая же ситуация у тебя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 13:50 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
krvsa, В моём коде никакого таймера нет, страница перегружается сама собой, при этом всякий раз выполняется функция "LoadSettings", в которой %page-параметры обнулены. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 13:53 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
vcoshakВ моём коде никакого таймера нет, страница перегружается сама собой Тогда читай советы по моей ссылке... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 13:55 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
krvsa, Конечно, можно поиграть с настройками и увеличить таймаут, но хотелось бы не зависеть от таймаута и как-то сохранять первичные значения... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 13:59 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
vcoshakkrvsa, В моём коде никакого таймера нет, страница перегружается сама собой, при этом всякий раз выполняется функция "LoadSettings", в которой %page-параметры обнулены. Посмотрите описание параметра страницы AUTOLOGOUT . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 14:08 |
|
||
|
Как передть параметры при обновлении ZEN-страницы
|
|||
|---|---|---|---|
|
#18+
servitvcoshakkrvsa, В моём коде никакого таймера нет, страница перегружается сама собой, при этом всякий раз выполняется функция "LoadSettings", в которой %page-параметры обнулены. Посмотрите описание параметра страницы AUTOLOGOUT . Да, это оно самое: /// If true, then attempt to refresh this page when its session timeout period has expired. /// This will cause a login page to display if the current session has ended /// and security is set to require login. Parameter AUTOLOGOUT As BOOLEAN = 1; Стоит по умолчанию "1", как прставил в "0", так и перестало перезагружаться. Большое спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2010, 14:36 |
|
||
|
|

start [/forum/topic.php?fid=39&msg=36598372&tid=1558102]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
58ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
75ms |
get tp. blocked users: |
2ms |
| others: | 267ms |
| total: | 443ms |

| 0 / 0 |
