我已经将一个编辑器组件插入到一个简单的表单中,当加载网页而不是预定义的文本(问号)时,我在编辑器中看到了单词true.
我试图从模板中剪切html特殊字符,查看另一个SO答案(大多数是关于< p:ajax>而不是< f:ajax>并且在对话框中放置编辑器,情况并非如此这里).我正在使用PrimeFaces 5.2.
我的控制器:
@ViewScoped
@ManagedBean(name = "mailTemplateBean")
public class MailTemplateBean extends BaseWebBean {
@PostConstruct
public void init() {
text = "?????????????";
}
private String text;
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
}
我的看法:
<h:form id="form">
<p:editor id="editor" widgetVar="editorWidget"
value="#{mailTemplateBean.text}" width="600" />
<p:commandButton value="Update" update="editor"
icon="ui-icon-disk" />
</h:form>
更新:Chrome和Firefox中的行为不同. Chrome – 启动编辑器禁用并清空.只有当我单击命令按钮时 – 它才会刷新并显示正确的文本.上面描述了什么 – 它是如何在Firefox中工作的.
最佳答案 我不确定这是否打算如何工作,但我修复了问题,将以下行放入表单中:
<p:remoteCommand name="rc" update="editor" autoRun="true"/>
它在加载页面后刷新编辑器,并正确显示辅助bean的值.