
富文本编辑器-kindeditor
1、接下来是一个富文本的增强版。但是增强版的就没有安全一说了。可以进行一个跨站脚本攻击了。
2、kindeditor有一个简单模式。
3、用法非常的简单,你可以照着别人给的Demo来做。它里面的元素绑定事件,跟Jquery很像,但是 由 "$"符号换成了"K"符号,对插件起的别名。
4、官网地址:http://kindeditor.net/demo.php。参照在线的Demo就可以。
5、使用方式:
1)页面中引入 脚本 + 语言包
<script charset="utf-8" src="../kindeditor-min.js"></script>
<script charset="utf-8" src="../lang/zh_CN.js"></script>
2)编辑器的加载:
<script>
var editor;
//KindEditor.ready 就相当于 $(document).ready(function(){});//当页面加载完成后处理的事件
KindEditor.ready(function(K) {
//KindEditor加载完毕后,创建编辑器。富文本编辑器的事件,也都在这个方法里定义。【重点】
editor = K.create('textarea[name="content"]', {
allowFileManager : true//允许文件的上传管理
});
K('input[name=getHtml]').click(function(e) {
alert(editor.html());//获取富文本编辑器的Html代码,即获取脚本
});
K('input[name=isEmpty]').click(function(e) {
alert(editor.isEmpty());//判断文本内容是否为空
});
K('input[name=getText]').click(function(e) {
alert(editor.text());//获取富文本编辑器的文本内容
});
K('input[name=selectedHtml]').click(function(e) {
alert(editor.selectedHtml());//获取富文本编辑器中选中的Html标签
});
K('input[name=setHtml]').click(function(e) {
editor.html('<h3>Hello KindEditor</h3>');
});
K('input[name=setText]').click(function(e) {
editor.text('<h3>Hello KindEditor</h3>');
});
K('input[name=insertHtml]').click(function(e) {
editor.insertHtml('<strong>插入HTML</strong>');//向富文本编辑器中插入一段html标签
});
K('input[name=appendHtml]').click(function(e) {
editor.appendHtml('<strong>添加HTML</strong>');//向富文本编辑器中追加一段Html标签
});
K('input[name=clear]').click(function(e) {
editor.html('');//清空富文本编辑器
});
});
</script>
3)对于下载下来的编辑器包,.net项目里面,目录仅保留:
(1)asp.net 文件夹
(2)examples 文件夹
(3)lang 文件夹>en.js 和 zh_CN.js文件
(4)plugins 文件夹(可以留下)
(5)themes 文件夹
6、KindEditor比较的出名,百度也在用,阿里也在用,相对来说比较的漂亮。
7、这个KindEditor编辑器,直接生成的是Html代码,在ASPX页面中,直接提交,“检测到有潜在危险”,有非法字符。
1)这时候如何处理?在前台页面,代码顶部,C#指令行,写入指令:ValidateRequest="false"。将请求验证 关闭掉。
2)接下来,就可以将内容提交到后台了。
3)如何将值加载到富文本编辑器,来进行修改呢?这跟UBB一个用法。
8、KindEditor的工具按钮的设置,通过属性(items)来决定,
eg:
<script>
var editor;
KindEditor.ready(function(K) {
editor = K.create('textarea[name="content"]', {
resizeType : 1,
allowPreviewEmoticons : false,
allowImageUpload : false,
items : [
'fontname', 'fontsize', '|', 'forecolor', 'hilitecolor', 'bold', 'italic', 'underline',
'removeformat', '|', 'justifyleft', 'justifycenter', 'justifyright', 'insertorderedlist',
'insertunorderedlist', '|', 'emoticons', 'image', 'link']
});
});
</script>
9、最后一个工作,就是要上传图片。上传图片,这时候就必须要设置后台了。后台接收到咱的图片之后,给咱保存到服务器的一个文件夹下,上传成功之后,富文本编辑器中显示咱们上传的图片。这个怎么做呢?
1)这个时候,参考一个下载文件中,asp.net 文件夹下,有一个文件(upload_json.ashx)和 一个文件夹(bin)。
2)在文件夹(bin)下,有一个类库文件(LitJSON.dll)。
3)我们把这个 类库文件(LitJSON.dll)放到我们的项目中 包管理的文件下。然后添加引用。【关键点】
4)文件(upload_json.ashx)咱们就可以在项目中直接使用了。【关键点】
5)然后参照里面的demo来做上传功能的更改。
10、给一个kindeditor编辑器的包:链接:https://pan.baidu.com/s/1d6xHbVbx4MzrbrfEfXiWuw
提取码:0yrq





