在jsp中使用CKEditor
jopen
10年前
在线编辑器最好的当然是CKEditor.本文介绍CKEditor在jsp环境下的使用。(至少JRE 1.4 and Servlet 2.5/JSP 2.1)
下载 http://ckeditor.com/download,推荐下载 ckeditor-java-3.6.4,关键的包是 ckeditor-java-core-3.x.y.jar,x,y表示版本号。目前最新是3.5.3。解压后把ckeditor放入你的工程目录,(当然你可以删除其中像_samples等无实际意义的文件夹);把 ckeditor-core.jar放入工程类加载目录(lib\)。
在Jsp文件导入必要包,
<%@page import="com.ckeditor.CKEditorConfig"%> <%@page import="com.ckeditor.EventHandler"%>
标签引入,
<%@ taglib uri="http://ckeditor.com" prefix="ckeditor" %>
下面是例子,
<html> <body> <form action="getEditor.jsp" method="post"> <p> <label for="editor1">Editor 1:</label> <textarea cols="80" id="editor1" name="editor1" rows="10"></textarea> </p> <p> <input type="submit" value="Submit" /> </p> </form> <% CKEditorConfig settings = new CKEditorConfig(); // settings.addConfigValue("toolbar","[[ 'Source', '-', 'Bold', 'Italic' ]]"); %> <ckeditor:replace replace="editor1" basePath="ckeditor/" /> </body> </html>
核心是利用ckeditor标签replace一个textarea。你也可以进行各种定制,比如定义编辑器样式、工具栏等。
以下介绍如何将CKEditor和CKFinder组合使用,因为如果不这样,编辑器上传图片等功能是无法使用的。CKFinder的单独配置这里不介绍,相关可以查看笔者以前的博客。
组合的方法可以采取taglib的方式,也可以采用Js的方式。
Taglib:
<%@ taglib uri="http://cksource.com/ckfinder" prefix="ckfinder" %>然后使用:<ckfinder:setupCKEditor basePath="ckfinder/" editor="editor1" />
Js:
var editor = CKEDITOR.replace( 'editor1' ); CKFinder.setupCKEditor( editor, '/ckfinder/' );
当然上述两种方式都可以进一步自定义设置。效果图如下:
来自:http://blog.csdn.net/chenloveit/article/details/12032431