暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

ASP.Net之笔记11-10(富文本编辑器-kindeditor)

百变则是新 2019-09-25
1089


富文本编辑器-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


文章转载自百变则是新,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论