百度的这个编辑器挺强大的,这里只是用他的文本功能,没有介绍上传图片视频的。
我用是的SSH来写的项目。
1. 把下载的UEditor(ueditor1_4_3_1-utf8-jsp)解压后全部复制到WebContent目录下,如下图:
2.修改ueditor/ueditor.config.js里的路径 如下图:
3. 将ueditor/jsp/lib下的所有Jar文件复制到项目的/WEB-INF/lib中;
4.修改ueditor/ueditor.config.js里面的toolbars的内容来减少不想要的图标:
//工具栏上的所有的功能按钮和下拉框,可以在new编辑器的实例时选择自己需要的从新定义
, toolbars: [[
'fullscreen', 'source', '|', 'undo', 'redo', '|',
'bold', 'italic', 'underline', 'fontborder', 'strikethrough', '|', 'forecolor', 'backcolor', 'insertorderedlist', 'insertunorderedlist', 'selectall', 'cleardoc', '|',
'rowspacingtop', 'rowspacingbottom', 'lineheight', '|',
'customstyle', 'paragraph', 'fontfamily', 'fontsize', '|',
'directionalityltr', 'directionalityrtl', 'indent', '|',
'justifyleft', 'justifycenter', 'justifyright', 'justifyjustify', '|', 'touppercase', 'tolowercase', '|',
'link', 'unlink','|',
'emotion', 'pagebreak', 'background', '|',
'horizontal', 'date', 'time', 'spechars', 'snapscreen', '|',
'inserttable', 'deletetable', 'insertrow', 'deleterow', 'insertcol', 'deletecol', 'charts', '|',
'preview', 'searchreplace', 'help'
]]
4.新建自己的jsp页面,把自带的index.html中需要的复制进去
一定要引入以下三个js,否则没有效果
<script type="text/javascript" charset="utf-8" src="js/ueditor/ueditor.config.js"></script>
<script type="text/javascript" charset="utf-8" src="js/ueditor/ueditor.all.min.js"> </script>
<script type="text/javascript" charset="utf-8" src="js/ueditor/zh-cn.js"></script>
5. 内容中可以换成 <textarea name="content" id="editor" style="height: 400px;"></textarea>
<form action="article_addArticle" method="post"> //换成自己自己需要的
<input type="text" name="userId" value="<s:property value="#session.user.userId" />">
<textarea name="content" id="editor" style="height: 400px;"></textarea> <script type="text/javascript">
//实例化实例化编辑器
var ue = UE.getEditor('editor');
function getContent() {
var arr = [];
arr.push("使用editor.getContent()方法可以获得编辑器的内容");
arr.push("内容为:");
arr.push(UE.getEditor('editor').getContent());
alert(arr.join("\n"));
}
</script> <button type="submit" value="提交">提交</button>
</form>
效果:
6. 编辑文本的时候,只需要把内容带回来就行了
<form action="article_updateArticle" method="post" >
<input type="text" name = "articleId" value="<s:property value="articleInfo.articleId" />">
<br/>
<input type="text" name="title" value="<s:property value="articleInfo.artTitle" />" style="width:400px;height:30px;">
<!-- <textarea name="content" id="editor" style="height:400px;"></textarea> -->
<script type="text/plain" id="editor" name="content" style="height:400px;">
<s:property value="articleInfo.artContent" escape="false"/>
</script> <script type="text/javascript">
var ue = UE.getEditor('editor');
function getContent() {
var arr = [];
arr.push("使用editor.getContent()方法可以获得编辑器的内容");
arr.push("内容为:");
arr.push(UE.getEditor('editor').getContent());
alert(arr.join("\n"));
} </script> <button type="submit" value="提交">提交</button>
</form>
7.说一下,保存到数据库的时候会把格式都保存进去,所以输出的时候会把html格式都输出来,只需要加上(escape = "false")即解析html代码
<s:property value="articleInfo.artContent" escape="false"/> 就ok了,这样保存到数据库的html就会起作用了。
这是自己学习过程中的记录,方便自己回顾,好记性不如烂笔头。
作者:艺至