我发现了一些很棒的javascript代码(xpHTMLMail文件),可以创建一个HTML电子邮件,用户可以通过xpage文档动态创建这些电子邮件,并在销售人员面前撰写评论。但是,那里有一些Multiline编辑框,它们中有回车符,空格等。将它们添加到HTML时不会出现这些问题。我能做些什么来保持创建的电子邮件的格式?提前谢谢。
以下是处理我问题的这一部分的代码(inputClosing是一个多行编辑框):
mail.addHTML("<br /><br /><b>Closing</b><br />"+getComponent('inputClosing').getValue())
如果inputClosing有......
“亲爱的乔,
很棒的工作。坚持下去!
谢谢, 比尔“
它作为电子邮件进入......
亲爱的乔,伟大的工作。保持!谢谢,比尔
答案 0 :(得分: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 />") );
答案 1 :(得分:0)
马克的建议肯定有效,但是用<pre></pre>
包装文本字段可能会更容易,然后它会将它们视为文本而不是html,无论它是什么类型的格式化字符。