1.什么是KindEditor
KindEditor 是一套开源的在线HTML编辑器,主要用于让用户在网站上获得所见即所得编辑效果,开发人员可以用 KindEditor 把传统的多行文本输入框(textarea)替换为可视化的富文本输入框。 KindEditor 使用 JavaScript 编写,可以无缝地与 Java、.NET、PHP、ASP 等程序集成,比较适合在 CMS、商城、论坛、博客、Wiki、电子邮件等互联网应用上使用。
2.前期准备
到官网下载最新版的KindEditor 4.1.10,解压文件后可得
文件结构:
asp:与asp结合的示例代码
asp.net:与asp.net结合的示例代码
attached:上传文件的根目录,可在相关的代码中修改
examples:功能演示的示例代码
jsp:与jsp结合的示例代码
lang:语言包
php:与php结合的示例代码
plugins:控件的功能代码的实现
kindeditor.js:配置文件
kindeditor-min.js:集成文件
由于使用的是ASP.NET,所以将不需要的文件夹删掉。其中在asp.net中demo.aspx是参考代码,也可以删掉。
3.配置KindEditor
(1)新建ASP.NET空项目,添加WebForm.aspx
3.2:将attached文件夹直接放在项目根目录下
3.1:将精简后的kindeditor文件夹(删除asp/examples/jsp/php文件夹)放到项目根目录下
3.3:新建libs文件夹,将kindeditor/asp.net/bin/LitJSON.dll文件复制到libs文件夹中,并引用(在别的电脑上,这个引用路径可能不正确,直接找到项目中libs中的LitJSON.dll再次引用即可)。
(2)新建WebForm1.aspx文件,引入相关文件
1 <link href="kindeditor/plugins/code/prettify.css" rel="stylesheet" type="text/css" /> 2 <script src="kindeditor/lang/zh_CN.js" type="text/javascript"></script> 3 <script src="kindeditor/kindeditor.js" type="text/javascript"></script> 4 <script src="kindeditor/plugins/code/prettify.js" type="text/javascript"></script> 5 <script type="text/javascript"> 6 KindEditor.ready(function (K) { 7 var editor = K.create('#content', { 8 //上传管理 9 uploadJson: 'kindeditor/asp.net/upload_json.ashx', 10 //文件管理 11 fileManagerJson: 'kindeditor/asp.net/file_manager_json.ashx', 12 allowFileManager: true, 13 //设置编辑器创建后执行的回调函数 14 afterCreate: function () { 15 var self = this; 16 K.ctrl(document, 13, function () { 17 self.sync(); 18 K('form[name=example]')[0].submit(); 19 }); 20 K.ctrl(self.edit.doc, 13, function () { 21 self.sync(); 22 K('form[name=example]')[0].submit(); 23 }); 24 }, 25 //上传文件后执行的回调函数,获取上传图片的路径 26 afterUpload : function(url) { 27 alert(url); 28 }, 29 //编辑器高度 30 width: '700px', 31 //编辑器宽度 32 height: '450px;', 33 //配置编辑器的工具栏 34 items: [ 35 'source', '|', 'undo', 'redo', '|', 'preview', 'print', 'template', 'code', 'cut', 'copy', 'paste', 36 'plainpaste', 'wordpaste', '|', 'justifyleft', 'justifycenter', 'justifyright', 37 'justifyfull', 'insertorderedlist', 'insertunorderedlist', 'indent', 'outdent', 'subscript', 38 'superscript', 'clearhtml', 'quickformat', 'selectall', '|', 'fullscreen', '/', 39 'formatblock', 'fontname', 'fontsize', '|', 'forecolor', 'hilitecolor', 'bold', 40 'italic', 'underline', 'strikethrough', 'lineheight', 'removeformat', '|', 'image', 'multiimage', 41 'flash', 'media', 'insertfile', 'table', 'hr', 'emoticons', 'baidumap', 'pagebreak', 42 'anchor', 'link', 'unlink', '|', 'about' 43 ] 44 }); 45 prettyPrint(); 46 }); 47 </script>