在rtf中书写和阅读文本时出现问题

时间:2019-02-19 13:09:09

标签: xpages-ssjs

在Xpage中,我有以下rtf:

<xp:inputRichText value="#{document1.example_doc}">
        <xp:this.attrs>
                <xp:attr name="toolbar">
                         <xp:this.value><![CDATA[            [
            ["Bold", "Italic", "Underline", "Strike", "-", "TextColor", "BGColor" ],
            ["Indent", "Outdent"]
                                                ]
                ]]>       </xp:this.value>
                </xp:attr>
        </xp:this.attrs>
</xp:inputRichText>

保存此文档时,我在每一行的开头看到

。之后,当我尝试使用var rtf = doc.getFirstItem("example_doc").getText();

读取此rtf的文本时,这给我带来了问题。

结果始终是一个空字符串

所以,或者我找到了另一种保存rtf的方法,或者找到了另一种读取rtf文本的方法

1 个答案:

答案 0 :(得分:0)

我找到了解决问题的方法。

我将viewScope变量(exampl_doc)绑定到inputRichText的data属性。 在保存按钮的onclick事件中,我将所有

替换为

以这种方式,随后使用var rtf = doc.getFirstItem(“ example_doc”)。getText();读取rtf时, ,我得到的是该字段的正确文本。

try{
   var regex = /<p dir="ltr">/gi;
   var rtf = viewScope.example_doc.toString().replace(regex, '<p>');
   document1.replaceItemValue("example_doc",rtf);
   document1.save();
}
catch(e){
   sessionScope.error +=e.toString();
}