<script type="text/javascript" src="../../Scripts/Plugins/kindeditor/kindeditor.js"></script>
    <script type="text/javascript">
        var editor;
        KindEditor.ready(function (K) {
            editor = K.create('#Comment', {
                uploadJson: '../../Scripts/Plugins/kindeditor/asp.net/upload_json.ashx',
                fileManagerJson: '../../Scripts/Plugins/kindeditor/asp.net/file_manager_json.ashx',
                afterBlur: function () { this.sync(); },
                items: [
                    'source', '|',  'print', 'template', 'cut', 'copy', 'paste',
                    'plainpaste', 'wordpaste', '|', 'justifyleft', 'justifycenter', 'justifyright',
                    'superscript', 'clearhtml', 'quickformat',
                    'formatblock', 'fontname', 'fontsize', '|', 'forecolor', 'hilitecolor', 'bold',
                    'italic', 'underline', 'strikethrough', 'lineheight', 'removeformat', '|', 'image', 'multiimage',
                    'flash'
                ],
                afterCreate: function () {
                    var editerDoc = this.edit.doc;//得到编辑器的文档对象
                    //监听粘贴事件, 包括右键粘贴和ctrl+v
                    $(editerDoc).bind('paste', null, function (e) {
                        /*获得操作系统剪切板里的项目,e即kindeditor,
                        *kindeditor创建了originalEvent(源事件)对象,
                        *并指向了浏览器的事件对象,而chrome浏览器
                        *需要通过clipboardData(剪贴板数据)对象的items
                        *获得复制的图片数据。
                        */
                        var ele = e.originalEvent.clipboardData.items;
                        for (var i = 0; i < ele.length; ++i) {
                            //判断文件类型
                            if (ele[i].kind == 'file' && ele[i].type.indexOf('image/') !== -1) {
                                var file = ele[i].getAsFile();//得到二进制数据
                                //创建表单对象,建立name=value的表单数据。
                                var formData = new FormData();
                                formData.append("Filedata", file);//name,value
                                //用jquery Ajax 上传二进制数据
                                $.ajax({
                                    url: '../../Services/UploadFile.ashx?action=1',
                                    type: 'POST',
                                    data: formData,
                                    // 告诉jQuery不要去处理发送的数据
                                    processData: false,
                                    // 告诉jQuery不要去设置Content-Type请求头
                                    contentType: false,
                                    dataType: "json",
                                    beforeSend: function () {
                                        //console.log("正在进行,请稍候");
                                    },
                                    success: function (responseStr) {
                                        //上传完之后,生成图片标签回显图片,假定服务器返回url。
                                        var src = responseStr.LnkUrl;
                                        var imgTag = "<img src='" + src + "' border='0'/>";
                                        //console.info(imgTag);
                                        //kindeditor提供了一个在焦点位置插入HTML的函数,调用此函数即可。
                                        editor.insertHtml(imgTag);
                                    },
                                    error: function (responseStr) {
                                        console.log("error");
                                    }
                                });
                            }
                        }
                    }
                    )
                }
            });
        });
</script>

富文本框实现粘贴图片

DEMO下载地址:https://dwz.cn/ORcEz9fz

kindeditor 富文本粘贴 图片的更多相关文章

  1. django的admin或者应用中使用KindEditor富文本编辑器

    由于django后台管理没有富文本编辑器,看着好丑,展示出来的页面不美观,无法做到所见即所得的编辑方式,所以我们需要引入第三方富文本编辑器. 之前找了好多文档已经博客才把这个功能做出来,有些博客虽然写 ...

  2. 配置KindEditor富文本编辑器

    第一步:首先我们要到KindEditor官网下载资源包-点击进入官网下载KindEditor资源包 第二部:在下载完了KindEditor的资源包后解压结构如下图所示: 里面包括集中语言的文件上传后台 ...

  3. (转)淘淘商城系列——KindEditor富文本编辑器的使用

    http://blog.csdn.net/yerenyuan_pku/article/details/72809794 通过上文的学习,我们知道了怎样解决KindEditor富文本编辑器上传图片时的浏 ...

  4. (转)学习淘淘商城第二十二课(KindEditor富文本编辑器的使用)

    http://blog.csdn.net/u012453843/article/details/70184155 上节课我们一起学习了怎样解决KindEditor富文本编辑器上传图片的浏览器兼容性问题 ...

  5. coding++:快速构建 kindeditor 富文本编辑器(一)

    此案例 demo 为 SpringBoot 开发 1.官网下载相关资源包:http://kindeditor.net/down.php 2.编写页面(引入相关JS) <!DOCTYPE html ...

  6. KindEditor富文本编辑器使用

    我的博客本来打算使用layui的富文本编辑器,但是出了一个问题,无法获取编辑器内容,我参考官方文档,获取内容也就那几个方法而已,但是引入进去后始终获取的值为空,百度和bing都试过了,但是始终还是获取 ...

  7. kindeditor富文本编辑器初步使用教程

    下载kindeditor 可以选择去官网下载(http://kindeditor.net/down.php),不过要FQ:或者直接CSDNhttp://download.csdn.net/downlo ...

  8. Axure 文本框去掉边框 富文本 粘贴文字图标

    在今天做原型的过程中,碰到两个问题: 1 文本框该如何去掉边框 2 富文本粘贴文字图标 第一个问题:首先是思路错了,又跑到元件上面找边框,跑到style里面去border的线,结果是不成功. 正解:属 ...

  9. springboot中使用kindeditor富文本编辑器实现博客功能

    kindeditor在之前已经用过,现在在springboot项目中使用.并且也在里面使用了图片上传以及回显等功能. 其实主要的功能是图片的处理:kindeditor对输入的内容会作为html标签处理 ...

随机推荐

  1. build.js

    // https://github.com/shelljs/shelljs// 检查NodeJS和npm的版本require('./check-versions')() process.env.NOD ...

  2. tomcat实现多端口、多域名访问(只针对一个tomcat)

    说明:这个部分介绍如何在tomcat中进行配置,使同一个应用可以通过不同的端口号进行访问. 在某些需要进行安全控制的场景中会应用到.例如:不同地址段只能通过某个端口访问. 2 找到tomcat的主目录 ...

  3. Struts2把数据封装到集合中之封装到map中

    struts框架封装数据可以封装到集合中也可以封装到map中,该篇博客主要讲解将数据封装到map中. 1. 封装复杂类型的参数(集合类型 Collection .Map接口等) 2. 需求:页面中有可 ...

  4. webstorm 打包angular Module build failed: Error: No PostCSS Config found

    angular创建项目后,在webstorm中启动时,报出如题错误,奇怪的是我从命令行启动(ng server)是没有问题的,多方寻求无果,在网上看到过说要加一个配置文件,我不信.我觉得是我配置哪里有 ...

  5. 对于读txt文件一点总结

    txt 内容 中间有比如如空格,制表符(tab)在txt为空格符(Spaces).回车符.换行符,有空字符串等情况,在读取过滤中要充分考虑到 1:打开文件 var sr=new StreamReade ...

  6. 什么是MVVM模式

    问题引入1 场景一:团队辛辛苦苦完成了一个项目,抱着激动的心情去给用户做demo,而用户给你的反馈是UI很不满意,要重新修改,否则拒绝验收.大规模修改UI,晴天霹雳!2 场景二:产品在一家客户上线运行 ...

  7. hdu 1686 & poj 2406 & poj 2752 (KMP入门三弹连发)

    首先第一题 戳我穿越;http://acm.hdu.edu.cn/showproblem.php?pid=1686 题目大意好理解,每组输入一个子串和一个母串,问在母串中有多少个子串? 文明人不要暴力 ...

  8. 09. pt-fingerprint

    vim pt-fingerprint.txt select name, password from user where id=5;select name, password from user wh ...

  9. Linux 双网关(电信与联通)

    经常有这种需求,一台Linux服务器配置电信IP和网通IP,默认情况下,后启动的网卡的网关生效.南电信北网通,配置电信和网通IP,无非是为了减少网络延时,使电信用户的请求响应在电信网络中传输,网通用户 ...

  10. boost timer代码学习笔记

    socket连接中需要判断超时 所以这几天看了看boost中计时器的文档和示例 一共有五个例子 从简单的同步等待到异步调用超时处理 先看第一个例子 // timer1.cpp: 定义控制台应用程序的入 ...