在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>
保存此文档时,我会在每行的开头看到<p dir =“ltr”>。之后当我尝试使用var rtf = doc.getFirstItem("example_doc").getText();
读取此rtf的文本时,这给我带来了问题
结果始终为空字符串
所以,或者我找到了另一种保存rtf的方法,或者我找到另一种方法来读取rtf的文本
我找到了解决问题的方法。
我将viewScope变量(exampl_doc)绑定到inputRichText的data属性。在保存按钮的onclick事件中,我用<p>替换所有<p dir =“ltr”>
以这种方式,然后使用var rtf = doc.getFirstItem(“example_doc”)读取rtf。getText(); ,我正在获得该字段的正确文本。
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();
}