图片批量上传js插件 imgFileupload.js
程序员文章站
2022-04-04 10:12:36
...
插件Demo展示
插件功能介绍
1、批量选择图片,限制图片的类型 (通过限制file的accept),只能选择图片
默认:accept="image/gif,image/jpeg,image/jpg,image/png,image/svg"
2、可以自定义限制选择图片的数量,默认5张
3、可以自定义限制图片的最大宽度和最大高度,默认都是10000px
4、可以自定义限制图片的单文件大小,默认是4MB
5、使用简单引用css和js ,并且在页面加上标签<div class="review_img"></div> 即可使用
【相关课程推荐:JavaScript视频教程】
代码Demo
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>轻量级图片批量上传JS插件imgFileupload</title> <meta charset="utf-8" /> <link href="Content/css/imgFileupload.css" rel="stylesheet" /> <script src="Content/js/jquery-1.8.3.min.js"></script> <script src="Content/js/imgFileupload.js"></script> </head> <body> <!--这里加载上传图片插件--> <div class="review_img"> </div> <input id="parameter1" type="text" value="" /><br /> <input id="parameter2" type="text" value="" /><br /> <input id="parameter3" type="text" value="" /><br /> <input id="parameter4" type="text" value="" /><br /> <input id="parameter5" type="text" value="" /><br /> <input type="button" id="sub" value="提交" οnclick="submit()"> </body> </html> <script type="text/javascript"> var imgFile; $(function () { imgFile = new ImgUploadeFiles('.review_img', function (e) { this.init({ MAX: 6, //Limit the number of images FileSize: 1024 * 1024 * 4,//单文件限制4MB(注意:单位KB) callback: function (arr) { console.log(arr) } }); }); }); function submit() { var formData = new FormData(); $(".review_img li").each(function (i, item) { formData.append("file", $(item).data("file")); }); formData.append("parameter1", $("#parameter1").val()); formData.append("parameter2", $("#parameter2").val()); formData.append("parameter3", $("#parameter3").val()); formData.append("parameter4", $("#parameter4").val()); formData.append("parameter5", $("#parameter5").val()); $.ajax({ url: "/Index/Write", type: "POST", dataType: "json", data: formData, async: true, cache: false, contentType: false, processData: false, beforeSend: function () { }, success: function (data) { alert("ok"); }, error: function () { alert("Sorry"); } }); } </script>
多次选择文件的情况,File元素中的filedata内容始终是当前选择的文件,上一次选择的文件则被替换掉
并且由于浏览器安全问题,JavaScript无法操作File文件上传中的filedata中的文件,无法把多次选择的文件赋值到File元素的filedata中,由此造成无法直接用form表单直接提交File元素中的文件
所以这里我们使用formData来提交文件和参数,没有使用form表单提交
本文来自 js教程 栏目,欢迎学习!
以上就是图片批量上传js插件 imgFileupload.js的详细内容,更多请关注其它相关文章!
上一篇: setTimeout居然还有第三个参数?
下一篇: Java多线程中线程间的通信