layui修改源码使其多文件上传支持一次请求批量上传文件&Java控制器代码&上传数量限制&多次请求多线程问题解决

前言就不多说了,直接言归正传!!!

  •  第一个问题(多文件多次请求):使用layui上传多文件的js源码是在upload.js中,当然果如你使用的是layui.all.js,那这个上传文件的代码是在layui.all.js文件里。直接讲最关键的上传部分源码就好,layui的做法是使用layui.each()遍历文件队列依次发送Ajax(post,默认使用异步)请求到后台的。
  • 解决方法(多文件一次请求):看懂的关键部分,要想一次请求携带所有文件,先所有文件遍历放在同一个FormData中,最后最后在发送一次Ajax请求。当然这样虽然可以做到一次上传所有文件,但是对应的上传成功或失败后修改每个文件的状态还没做好,所有还得添加几行代码,稍见下方代码

  1. 源代码
// 使用layui.all.js 中的代码示范(格式化后 lines=4323 or search=请求上传接口出现异常)
layui.each(a, function (e, a) {
                var r = new FormData;
                r.append(l.field, a), layui.each(l.data, function (e, i) {
                    i = "function" == typeof i ? i() : i, r.append(e, i)
                }), i.ajax({
                    url: l.url,
                    type: "post",
                    data: r,
                    contentType: !1,
                    processData: !1,
                    dataType: "json",
                    headers: l.headers || {},
                    success: function (i) {
                        t++, d(e, i), u()
                    },
                    error: function () {
                        n+
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值