2016-09-09 5 views
0

Я создаю приложение XPAGES. и хотите отправить ссылку URL-адреса пользователю на конкретные документы.Как добавить pass thru html в javascript в текстовый элемент с заметками

В моем коде я добавляю стиль богатого текста и ссылку. Ссылка не конвертируется в слово «ссылка» с ссылкой на него html. Пробовал также квадратные скобки по всему URL-адресу ссылки.

Любые идеи?

var nrtStyle:NotesRichTextStyle = session.createRichTextStyle(); 

nrtStyle.setPassThruHTML(0); 

msgbody.appendStyle(nrtStyle); 

msgbody.appendText('<a href="' + context.getUrl().toString() + '">link</a>') 
+0

Примечание: Это не имеет никакого отношения к фактическому «javascript». Этот тег следует удалить из вопроса. –

ответ

1

Зачем делать это внутри Rich Text? Используйте управление XPages Link прямо на вашей странице.

+0

Привет, Дэвид, я хотел сделать это с помощью богатого текстового элемента, потому что сначала добавляю богатый текстовый элемент из существующего документа в электронное письмо и добавляю ссылку внизу электронных сообщений. Это часть сценария рабочего процесса, выполняющего множество stuf и валидаций до отправки фактического сообщения. –

+0

ОК. Я не видел в исходном вопросе, что вы пытались создать электронное письмо. Я думал, это было для реального XPage –

2

Вот SSJS код для отправки по электронной почте текущего пользователя со ссылкой на текущий XPage:

session.setConvertMIME(false); 
var doc:NotesDocument = database.createDocument(); 
doc.replaceItemValue("Form", "Memo"); 
var body:NotesMIMEEntity = doc.createMIMEEntity(); 
var header:NotesMIMEHeader = body.createHeader("Content-Type"); 
header.setHeaderVal("multipart/mixed"); 
header = body.createHeader("Subject"); 
header.setHeaderVal("Link to XPage you visited"); 
header = body.createHeader("To"); 
header.setHeaderVal(context.getUser().getDistinguishedName()); 
var stream:NotesStream = session.createStream(); 
stream.writeText('<a href="' + context.getUrl().toString() + '">Link to XPage</a>'); 
body.setContentFromText(stream,"text/html;charset=UTF-8", NotesMIMEEntity.ENC_NONE); 
stream.close(); 
doc.send(false); 
session.setConvertMIME(true); 

Он создает новый документ с включенным MIME лица с заголовком и содержанием.
электронной почты отправлено содержит ссылку HTML в теле:

enter image description here

Смотри here для получения дополнительной информации.

+0

Привет Кнут, Tx, я попробую это. Я пытался через rich text item и passthru, потому что в приложении. Я создаю Я добавляю богатый текстовый элемент из существующего документа в эти письма и хочу добавить ссылку в конце письма. –

+0

Добавьте содержимое этого текстового элемента текущего документа (например, «Тело») в это письмо с помощью «var docBody = currentDocument.getValue (« Тело »); stream.writeText (docBody.getHTML()); 'прямо после строки кода createStream(). –

+0

Невозможно заставить его работать. GetHTML вызывает ошибку. Для того, что я вижу, getHTML() работает с XSPDocument, а не с документом. –