сообщение клиента после рутины SSJS как? - PullRequest
2 голосов
/ 27 января 2012

У меня есть кнопка, которая в SSJS отправляет и отправляет электронную почту ...

Теперь я хотел бы, если возможно, показать статус отправки электронной почты пользователю в режиме реального времени:

  1. процесс отправки ....
  2. отправка успешно или ошибка отправки

Как я могу вызвать клиентский кодекс JS из подпрограммы SSJS?Вы предлагаете?

Ответы [ 4 ]

8 голосов
/ 27 января 2012

Если вы используете ExtLib, вы также можете использовать метод @WarningMessage ('messageText').

Вам потребуется добавить раздел в XPage для отображения сообщений.Это может быть так просто, как

<xp:messages id="messages1"></xp:messages>

После добавления каждого вызова @WarningMessage добавляется строка на панель сообщений.

6 голосов
/ 30 января 2012

8.5.3 представил очень хороший подход:

view.postScript

Вы можете вставить любой код CSJS, который вам нравится, из кода SSJS.

5 голосов
/ 27 января 2012

Это довольно просто.1. Добавьте элемент управления скрытым вводом на свою страницу, указав идентификатор.2. В вашем SSJS используйте getComponent («inputHidden1»). SetValue («Это сообщение») 3. Убедитесь, что элемент управления «Скрытый ввод» находится в обновляемой области (в противном случае значение не передается обратно в браузер, поэтомунедоступен в CSJS) 4. Перейдите на панель Source и поместите курсор на или в eventHandler, который запускает ваш SSJS.Это необходимо сделать, чтобы перейти к событию onComplete. 5. На панели «Все свойства» перейти к onComplete, добавить туда свой CSJS.например alert (dojo.byId ("# {id: inputHidden1}"). value)

Это запустит ваш SSJS и при завершении предупредит пользователя любым кодом в поле.

Для демонстрации и демонстрационного кода, проверьте мой пост в блоге: http://www.intec.co.uk/xpages-calling-client-side-javascript-from-server-side-javascript/

1 голос
/ 27 января 2012

Другой способ сделать это, кроме ответа Паулса, - это использовать диалог из extlib, и вы можете вызвать его из ssjs, поместить поле в диалоговое окно, установить значение области и показать диалоговое окно.

...