KindeEditor图片上传插件用法

因业务需要找了款插件 KindeEditor编辑器确认挺好用,但无奈技术有限,上传配置不知,故问度娘!

图片上传对于部分新手来说有时候是一件非常头疼的事,今天来分享一下项目中使用到的这个插件KindeEditor;对于图片上传、文件上传都是分分钟搞定的事,配置简单;现在来分享一下;

   KindeEditor官网Api文档:http://kindeditor.net/doc.php

   要想使用此插件我们首先就要去官网下载,下载完成后将插件放进我们的项目当中,如图:

  接着就是前端如何使用该插件,同样废话不多说直接上代码:

 1 @{
 2     ViewBag.Title = "KindeEditor图片上传";
 3 }
 4 <h2>KindeEditor图片上传</h2>
 5 <link href="~/Scripts/kindeditor/themes/default/default.css" rel="stylesheet" />
 6 <input type="button" value="上传" id="chooseImage" />
 7 <img id="imgbox" src="#" style="display: none"/>
 8
 9 <script src="~/Scripts/jquery-1.8.2.min.js"></script>
10 <script src="~/Scripts/kindeditor/kindeditor-min.js"></script>
11 <script src="~/Scripts/kindeditor/lang/zh_CN.js"></script>
12 <script type="text/javascript">
13     KindEditor.ready(function (K) {
14         var editor = K.editor({
15             uploadJson: ‘/Home/UploadImage‘,
16             allowFileManager: false   //允许图片管理 开启后再挑选图片的时候可以直接从图片空间内挑选
17         });
18
19         K(‘#chooseImage‘).click(function () {
20             editor.loadPlugin(‘image‘, function () {
21                 editor.plugin.imageDialog({
22                     showRemote: false,
23                     imageUrl: K(‘#PicUrl‘).val(),
24                     clickFn: function (url, message, error) {
25                         alert("上传成功!");
26                         K("#imgbox").attr("src", url);
27                         K("#imgbox").show();
28                         editor.hideDialog();
29                     }
30                 });
31             });
32         });
33     });
34 </script>

  后台上传图片的方法UploadImage:

 1 [HttpPost]
 2         public ActionResult UploadImage()
 3         {
 4             //文件保存路径
 5             const string savePath = "/Content/Images/";
 6             //上传文件类型
 7             const string fileTypes = "gif,jpg,jpeg,png,bmp";
 8             //上传文件大小
 9             const int maxSize = 10000000;
10
11             var hash = new Hashtable();
12             //获取文件信息
13             HttpPostedFileBase file = Request.Files["imgFile"];
14             if (file == null)
15             {
16                 hash = new Hashtable();
17                 hash["error"] = 1;
18                 hash["message"] = "请选择文件";
19                 return Json(hash, "text/html;charset=UTF-8");
20             }
21
22             string dirPath = Server.MapPath(savePath);
23             if (!Directory.Exists(dirPath))
24             {
25                 //不存在该目录则创建一个
26                 Directory.CreateDirectory(dirPath);
27                 //hash = new Hashtable();
28                 //hash["error"] = 1;
29                 //hash["message"] = "上传目录不存在";
30                 //return Json(hash, "text/html;charset=UTF-8");
31             }
32
33             string fileName = file.FileName;
34             string fileExt = Path.GetExtension(fileName).ToLower();
35             //文件大小判断
36             if (file.InputStream == null || file.InputStream.Length > maxSize)
37             {
38                 hash = new Hashtable();
39                 hash["error"] = 1;
40                 hash["message"] = "上传文件大小超过限制";
41                 return Json(hash, "text/html;charset=UTF-8");
42             }
43
44             if (string.IsNullOrEmpty(fileExt) || Array.IndexOf(fileTypes.Split(‘,‘), fileExt.Substring(1).ToLower()) == -1)
45             {
46                 hash = new Hashtable();
47                 hash["error"] = 1;
48                 hash["message"] = "上传文件扩展名是不允许的扩展名";
49                 return Json(hash, "text/html;charset=UTF-8");
50             }
51
52             var newFileName = DateTime.Now.ToString("yyyyMMddHHmmss", DateTimeFormatInfo.InvariantInfo) + fileExt;
53             var filePath = dirPath + newFileName;
54             file.SaveAs(filePath);
55             var fileUrl = savePath + newFileName;
56
57             hash = new Hashtable();
58             hash["error"] = 0;
59             hash["url"] = fileUrl;
60
61             return Json(hash, "text/html;charset=UTF-8");
62         }

到此一切都做好了,下面就来看看效果:

转载请注明来源:http://www.cnblogs.com/izhaofu/p/4754764.html

时间: 2024-11-10 18:09:44

KindeEditor图片上传插件用法的相关文章

图片上传插件用法,JS语法【三】

注意点: 作为文件域(<input type="file">)必须要有name属性,如果没有name属性,上传之后服务器是获取不到图片的.如:正确的写法是<input type="file" id="file1" name="file1" /> dataType参数一定要大写.如:dataType: 'HTML'. HTML <body> <p><input type=&q

Jquery自定义图片上传插件

1 概述 编写后台网站程序大多数用到文件上传,可是传统的文件上传控件不是外观不够优雅,就是性能不太好看,翻阅众多文件上传控件的文章,发现可以这样去定义一个文件上传控件,实现的文件上传的效果图如下: 2.该图片上传插件实现功能如下: 1>能够异步上传,上传成功之后,服务器返回响应结果:能够定义上传前和上传后自定义处理方式: 2>能够实现文件格式判断,过滤非图片文件: 3>服务端能够过滤重复上传的图片: 3.页面代码分析: 1>.Jquery图片上传插件代码如下: // 选中文件, 提

WebUploader文件图片上传插件的使用

最近在项目中用到了百度的文件图片上传插件WebUploader.分享给大家 需要在http://fex.baidu.com/webuploader/download.html点击打开链接下载WebUploader /*图片上传 */ var $ = jQuery, $img=$("#imagePath_img"), // 优化retina, 在retina下这个值是2 ratio = window.devicePixelRatio || 1, // 缩略图大小 thumbnailWid

Aps.net中基于bootstrapt图片上传插件的应用

Aps.net中基于bootstrapt图片上传插件的应用 在最近的项目中需要使用一个图片上传的功能,而且是多张图片同时上传到服务器的文件夹中,将图片路径存放在数据库中.为了外观好看使用了bootstrapt插件.插件下载地址:   http://www.jq22.com/jquery-info5231 index.html中的代码: <script> //初始化函数 $("#file-1").fileinput({ uploadUrl: 'image/Handler.as

百度图片上传插件【webuploader】

插件功能 |webuploader |文件上传 |图片上传 官方文档http://fex.baidu.com/webuploader/ 引入资源 使用Web Uploader文件上传需要引入三种资源:JS, CSS, SWF. <!--引入CSS--> <link rel="stylesheet" type="text/css" href="webuploader文件夹/webuploader.css"> <!--引

图片上传插件梳理与学习

图片上传梳理与学习: 项目的oper端和seller端,用了两个不同插件,简单了解一下: 一.seller端: seller端使用的是 AjaxUpload.js ,封装好的一个库.调用时传入参数,配置相关属性即可. 1.使用步骤 引入JS文件: JS代码构建对象,传入对应参数:同时JS中的方法可以进行图片上传之前之后的处理: 后台:实现图片上传同时返回结果: 2.AjaxUpload的学习参考: http://www.zhangxinxu.com/wordpress/2009/11/ajax-

【前端插件】图片上传插件收集

http://tpl.9iphp.com/146.htmlHTML5实现的图片上传预览功能 http://www.dropzonejs.com/ 图片上传预览. http://segmentfault.com/a/1190000000754560HTML5 本地裁剪图片并上传至服务器(老梗) http://elemefe.github.io/image-cropper/图片裁剪 上传 http://veerkat.me/blog/posts/HTML5-tu-pian-shang-chuan-y

无刷新的批量图片上传插件.NET版

啥都不说,先上效果图: 这是一个网上的第三方组件,原版是php的,我用.NET重写了图片上传的处理,下面贴上代码 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.IO; using System.Text; namespace CFUpload.CFUpload { /// <summary> /// Upload 的摘要说明 /// </s

自己动手打造ajax图片上传

今天笔者需要一款图片上传插件,但是网上没有提供一款符合自己需求且好用的.于是就自己动手写了一个. 方法1,仅使用jquery代码,不用第三方插件.代码如下 <p> <label>上传图片</label> <input class="ke-input-text" type="text" id="url" value="" readonly="readonly" /&g