在做后台管理的时候,遇到这样一个需求,实现多张图片上传并按选中的顺序显示。PS:图片上传的时候是即时上传到服务器,后台返回图片在服务器上的地址,在最后点击提交按钮的时候,把地址传给后端写入数据库即可。

1、input标签,accept='image/*'上传图片格式只要是image就行,multiple实现文件可以多选

<input type="file" id="add-pic2" accept="image/*" multiple>

2、监听选中事件

       $("#add-pic2").on("change", function () {
// if (pic_banner.length >= 10 || pic_banner.length + this.files.length >= 10) {
// return swal("最多10张图片");
// }
//递归上传
var files = this.files
files.length && diguiAjax(this.files, 0, this.files.length, function (res, i) {
var obj = {
pic: res.data.list
};
pic_banner.push(obj);
var bannerHtml = "";
bannerHtml = `<div class="pic-wrap pull-left"><span class="closeX" data-index="${res.data.list}">x</span><img src="${res.data.list}" alt=""></div>`;
$(".banner-wrap").append(bannerHtml);
if (i >= files.length) {
document.getElementById('add-pic2').value = null
}
})
});
//递归上传banner图片
function diguiAjax(files, j, length, cb) {
var ele = files[j];
//压缩图片 lrz压缩图片
lrz(ele).then(function (rst) { $post({
url: api_www + "/upload_img/uploadImg",
data: {
token: token,
img: rst.base64,
is: 1
},
callback: function (res) {
if (res.code == 1) {
cb(res, j)
if (++j < length) {
diguiAjax(files, j, length, cb)
}
}
}
});
})
}

附:如果选择图片先保存在本地,不上传,点击提交按钮统一上传,核心代码如下,

imgObjPreview1是要显示图片的div
imgObjPreview1.src = window.URL.createObjectURL(this.files[0]);

jquery实现多图片上传的更多相关文章

  1. Jquery插件-Html5图片上传并裁剪

    /** * 图片裁剪 * @author yanglizhe * 2015/11/16 */ (function($){ /** * Drag */ var Drag={obj:null,init:f ...

  2. JQuery插件:图片上传本地预览插件,改进案例一则。

    /* *名称:图片上传本地预览插件 v1.1 *作者:周祥 *时间:2013年11月26日 *介绍:基于JQUERY扩展,图片上传预览插件 目前兼容浏览器(IE 谷歌 火狐) 不支持safari *插 ...

  3. jquery实现本地图片上传预览和限流处理

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  4. jquery.cropper 裁剪图片上传

    https://github.com/fengyuanchen/cropper 1.必要的文件引用: <script src="/path/to/jquery.js"> ...

  5. 【原创】MVC项目中使用JQuery的upladify图片上传插件相关问题的解决方案

    一. 关于Uploadify Uploadify是一个jQuery插件,你可以很容易的为你的网站添加多个文件上传功能.有两个不同的版本(HTML5和Flash)允许你灵活选择为您的网站和回退方法正确实 ...

  6. JQuery的ajaxFileUpload图片上传初试

    本案例主要说讲使用ajaxFileUpload实现图片的异步上传. 1.html代码部分 这里的代码,主要设置一下name,后台获取时候要用到,还有设置一个onchange的事件对应的方法:ajaxF ...

  7. jQuery File Upload 图片上传解决方案兼容IE6+

    1.下载:https://github.com/blueimp/jQuery-File-Upload 2.命令: npm install bower install ================= ...

  8. 使用ajax,结合jquery,php实现图片上传预览功能

    大致逻辑:点击页面的file,上传图片到指定的php处理图片的文件,处理完成以后,将图片的连接地址返回,JS控制返回的数据,然后将图片动态的展示出来html代码<label> <im ...

  9. jquery插件fileupload图片上传(前端如何处理)

    1.页面首先引入jquery,版本不要低于1.6 <script src="../js/jquery.min.js"></script>2.其次页面引入对应 ...

  10. Java+jquery实现裁剪图片上传到服务器

    大体分两步: 1.利用jquery裁剪图片,把裁剪到的几个点传入后端 2.利用前端传入的几个点,来裁剪图片 首先,用到一个jquery的插件 imgAreaSelect 实例及插件下载地址:http: ...

随机推荐

  1. Hugging Face - 推理(Inference)解决方案

    每天,开发人员和组织都在使用 Hugging Face 平台上托管的模型,将想法变成概念验证(proof-of-concept)的 demo,再将 demo 变成生产级的应用. Transformer ...

  2. css之transform属性的使用

    1.定义:Transform属性应用于元素的2D或3D转换.这个属性允许你将元素旋转,缩放,移动,倾斜等. 2.常用的属性值: (1)translate(移动):   这个属性值里面含有三个参数,依次 ...

  3. python处理apiDoc转swagger

    python处理apiDoc转swagger 需要转换的接口 现在我需要转换的接口全是nodejs写的数据,而且均为post传输的json格式接口 apiDoc格式 apiDoc代码中的格式如下: / ...

  4. 异常概念&异常体系-异常分类

    异常概念&异常体系 异常,就是不正常的意思.在生活中:医生说,你的身体某个部分有异常,该部位和正常相比有点不同,该部位的功能将受影响,在程序中的意思就是: 异常:指的是程序在执行过程中,出现的 ...

  5. Django3.X使用富文本编辑器kindereditor上传图片时一直转圈圈,如何解决

    问题描述: 在写bbs项目的时候,老师用的是Django1.X结合富文本编辑器kindeditor,实现了图片上传,但是我在用Django3.X的时候,代码和老师一模一样,上传图片的时候一直转圈圈?? ...

  6. C# 处理实体类赋值(获取嵌套类型,支持list 自定义类型)

    public static T AESEncrypt<T>(T obj) where T : class { if (obj == null) { return obj; } var pr ...

  7. python实现通用json导入到mysql

    import json from Db import Db db = Db() ''' 参考配置文件 { "file": "test.json", " ...

  8. 简述 Gin 框架如何集成swagger

    https://blog.csdn.net/raogeeg/article/details/86743953 @Title           这个 API 所表达的含义,是一个文本,空格之后的内容全 ...

  9. LinkedHashmap简要说明

    https://segmentfault.com/a/1190000012964859 LinkedHashMap 继承自 HashMap,在 HashMap 基础上,通过维护一条双向链表,解决了 H ...

  10. 车联网安全WEB靶场实测

    序言 车联网跟WEB安全相关联的地方不多,车联网更多还是基于IOT安全.但是车联网安全也和WEB安全有密切相关的地方,比如云安全.API安全等.近两年的智能网联汽车从IVI(车载信息娱乐系统).OTA ...