javascript - InputRichText - 如何使用 Icefaces InputRichText?

标签 javascript jsf components ckeditor icefaces-1.8

我正在使用ice:inputRichText。我想获取选定的文本 - 这与客户端相关,我的意思是 - 在服务器端操作它并将其放回编辑器(在与选定的相同的位置)。您能否建议我一些最佳实践 - 如何使用此 JSF 组件?

非常感谢。

<小时/>

我还是不明白,ice:inputRichText 是如何工作的。目前,CKEDITOR 和服务器之间的通信存在很大问题。

我有一个带有 onclick 操作和服务器操作的 commandLink。 onclick 操作从 CKEDITOR 中获取选定的文本并将其放入隐藏字段。然后我可以在服务器端操作它。第一次它工作得很好。但是在该操作之后,inputRichText组件正在刷新(或类似的东西),然后不可能重复该操作(仅启动onclick部分,也启动服务器端)。如果我将 commandLInk 标记中的立即属性设置为 true,它可以工作,但我失去了应用程序的一些功能。所以我想说,ice:inputRichText 的上下文中存在一些验证错误。您能给我建议吗?

谢谢!

最佳答案

IceFaces将负责更新服务器中客户端编辑器的数据,您可以在服务器上执行操作并将值绑定(bind)保留在xhtml中,IceFaces将负责在客户端显示服务器上所做的更改。

以下是如何使用icefaces富文本编辑器的示例。

<ice:inputRichText id="inptTxtSelected" value="#{mybean.note}"
      rendered="#{!empty mybean.note}"
      height="295px" toolbar="editorToolbar" width="625px"
      customConfigPath="/templates/js/richTextEditorConfig.js" saveOnSubmit="true"/>

您可以使用 richTextEditorConfig.js 配置编辑器上的按钮

CKEDITOR.editorConfig = function(config) {
        config.toolbarCanCollapse = false;
        config.resize_enabled = false;
    config.toolbar = 'editorToolbar';
    config.height ='180px';
    config.baseFloatZIndex = 20000; 
    config.resize_maxWidth = "100%";    
    config.uiColor = '#E4E8F7';
    config.skin='office2003';
    config.toolbar_editorToolbar = [
 ['Preview','-','Link','Unlink','-','Bold','Italic',
       'Underline','- ','NumberedList','BulletedList']        
];
};

你的 Bean 应该具有类似的值,

public class MyBean {

    private String note;
    //getter and setter to follow

    public void manipulateText(ActionEvent e){ 
        note = "set from server";
    }
}

关于javascript - InputRichText - 如何使用 Icefaces InputRichText?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15625004/

相关文章:

html - JSF dataTable 作为具有可点击行的 CSS 表?

java - 在 Java Swing 中的其他组件之间插入组件的最快方法是什么?

javascript - 使用 require.js !async 插件加载 youtube iframe api

javascript - 如何在 React Native 中同时启用多个按钮的触摸?

jsf - PrimeFaces:如何使主题动态化

java - 重新访问时自动登录 JSF 应用程序,一旦登录

winforms - 就像Form类一样为Winforms Control添加Load事件

angular - 如何使用事件发射器触发子组件和父组件中的函数?

javascript - 将CSS更改为具有动画的元素?

javascript - 在滚动 100% 屏幕高度时调整标题大小 - javascript