2

我发现了一些很棒的 javascript 代码(xpHTMLMail 文件),它们能够创建一个 HTML 电子邮件,用户可以根据他们对销售人员撰写评论的 xpage 文档即时创建该电子邮件。但是,那里有一些多行编辑框,其中包含回车符、空格等。这些在添加到 HTML 时不会出现。我可以做些什么来保持创建的电子邮件的格式?提前致谢。

这是处理我的这部分问题的代码(inputClosing 是一个多行编辑框):

mail.addHTML("<br /><br /><b>Closing</b><br />"+getComponent('inputClosing').getValue())

如果 inputClosing 有...

“亲爱的乔,

做得好。保持!

谢谢,比尔”

它以...的形式进入电子邮件

亲爱的乔,伟大的工作。保持!谢谢,比尔

4

2 回答 2

2

我写了那个库,所以谢谢!

由于您正在创建 HTML 邮件,因此您需要将多行编辑框的值中的换行符替换为<br />标签。由于您在 XPage 中处理 Java,因此换行符使用\r\n序列存储在值中。

您可以使用replaceAll()或 (SSJS) @ReplaceSubstring()函数替换它们。

您的代码可能如下所示:

var content:string = getComponent("inputClosing").getValue();   
mail.addHTML("<b>Closing</b><br />" + content.replaceAll("\r\n", "<br />") );
于 2012-08-15T20:15:32.983 回答
0

马克的建议肯定有效,但将文本字段包装起来可能更容易,<pre></pre>然后它将它们视为文本而不是 html,无论其中包含哪种格式字符。

于 2012-08-15T20:49:42.953 回答