<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!-- 引入 layui.css -->
<link rel="stylesheet" href="/static/lib/layui/css/layui.css">
<!-- 引入 layui.js -->
<script src="/static/lib/layui/layui.js"></script>
<script src="/static/js/jquery.min.js"></script>
<style>
.layui-upload-drag-self {
background-color: #fbfdff;
border: 1px dashed #c0ccda;
border-radius: 6px;
box-sizing: border-box;
width: 148px;
height: 148px;
line-height: 148px;
vertical-align: top;
display: inline-block;
text-align: center;
cursor: pointer;
outline: 0;
margin-right: 13px;
float: left;
}
.layui-input-inlines-self {
position: relative;
margin-left: 90px;
min-height: 36px;
text-align: left;
}
.layui-upload-drag-self .layui-icon {
font-size: 28px;
color: #8c939d
}
.layui-upload-drag-self .img {
position:relative;
height: 148px;
width: 148px;
}
.img-more .layui-icon {
font-size: 28px;
color: #8c939d
}
.img-more .img {
position:relative;
height: 148px;
width: 148px;
}
.layui-upload-img {
width: 148px;
height: 148px;
border-radius: 6px;
margin-top: -3px;
margin-left: -2px;
}
.handle {
position: absolute;
width: 148px;
height: 100%;
z-index: 100;
border-radius: 6px;
top: 0;
background: rgba(59, 60, 61, 0.6);
text-align: center;
}
.handle .icon-myself {
z-index: 999;
transition: all .3s;
cursor: pointer;
font-size: 25px;
width: 25px;
color: rgba(255, 255, 255, 0.91);
margin: 0 4px;
}
</style>
</head>
<body>
<div class="layui-col-md12 layui-col-sm6 layui-col-xs12">
<div class="">
<div class="layui-card-body">
<form class="layui-form layui-table-form" style="text-align: center" action="" lay-filter="cfg-form">
<div class="layui-form-item">
<label class="layui-form-label">上传图片:</label>
<button type="button" id="importModel" class="layui-hide">图片导入</button>
<div class="layui-input-inlines-self" id="imgItemInfo-A">
<div class="layui-upload-drag-self" id="importImg-A-0">
<div id="imgDivs-A-0">
<i class="layui-icon" id="uploadIcon-A-0"></i>
</div>
<div class="img layui-hide" id="uploadDemoView-A-0">
<img class="layui-upload-img" id="imgs-A-0" src="">
<div class="handle layui-hide" id="handle-A-0">
<i class="layui-icon icon-myself" id="preImg-A-0"></i>
<i class="layui-icon icon-myself" id="delImg-A-0">ဇ</i>
</div>
</div>
</div>
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline">
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm layui-hide" id="btn-more-A" data-type="submit">
更多图片
</button>
<div class="site-demo-flow layui-hide img-more" id="more-A">
</div>
</div>
</div>
<div class="layui-form-item" id="button-group">
<div class="layui-inline">
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm" id="getUrls"
lay-submit=""
lay-filter="getUrls-form-submit" data-type="submit">获取图片url的值
</button>
</div>
</div>
</form>
</div>
</div>
</div>
<div class="layui-col-md12 layui-col-sm6 layui-col-xs12">
<div class="layui-card">
<div class="layui-card-body">
<form class="layui-form layui-table-form" style="text-align: center" action="" lay-filter="cfg-form">
<div class="layui-form-item">
<label class="layui-form-label">上传图片:</label>
<!-- <button type="button" id="importModel" class="layui-hide">图片导入</button>-->
<div class="layui-input-inlines-self" id="imgItemInfo-B">
<div class="layui-upload-drag-self" id="importImg-B-0">
<div id="imgDivs-B-0">
<i class="layui-icon" id="uploadIcon-B-0"></i>
</div>
<div class="img layui-hide" id="uploadDemoView-B-0">
<img class="layui-upload-img" id="imgs-B-0" src="">
<div class="handle layui-hide" id="handle-B-0">
<i class="layui-icon icon-myself" id="preImg-B-0"></i>
<i class="layui-icon icon-myself" id="delImg-B-0">ဇ</i>
</div>
</div>
</div>
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline">
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm layui-hide" id="btn-more-B" data-type="submit">
更多图片
</button>
<div class="site-demo-flow layui-hide img-more" id="more-B">
</div>
</div>
</div>
<!-- <div class="layui-form-item" id="button-group">-->
<!-- <div class="layui-inline">-->
<!-- <button type="button" class="layui-btn layui-btn-normal layui-btn-sm" id="getUrls"-->
<!-- lay-submit=""-->
<!-- lay-filter="getUrls-form-submit" data-type="submit">获取图片url的值-->
<!-- </button>-->
<!-- </div>-->
<!-- </div>-->
</form>
</div>
</div>
</div>
<div class="layui-col-md12 layui-col-sm6 layui-col-xs12">
<div class="layui-card">
<div class="layui-card-body">
<form class="layui-form layui-table-form" style="text-align: center" action="" lay-filter="cfg-form">
<div class="layui-form-item">
<label class="layui-form-label">上传图片:</label>
<!-- <button type="button" id="importModel" class="layui-hide">图片导入</button>-->
<div class="layui-input-inlines-self" id="imgItemInfo-C">
<div class="layui-upload-drag-self" id="importImg-C-0">
<div id="imgDivs-C-0">
<i class="layui-icon" id="uploadIcon-C-0"></i>
</div>
<div class="img layui-hide" id="uploadDemoView-C-0">
<img class="layui-upload-img" id="imgs-C-0" src="">
<div class="handle layui-hide" id="handle-C-0">
<i class="layui-icon icon-myself" id="preImg-C-0"></i>
<i class="layui-icon icon-myself" id="delImg-C-0">ဇ</i>
</div>
</div>
</div>
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline">
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm layui-hide" id="btn-more-C" data-type="submit">
更多图片
</button>
<div class="site-demo-flow layui-hide img-more" id="more-C">
</div>
</div>
</div>
<!-- <div class="layui-form-item" id="button-group">-->
<!-- <div class="layui-inline">-->
<!-- <button type="button" class="layui-btn layui-btn-normal layui-btn-sm" id="getUrls"-->
<!-- lay-submit=""-->
<!-- lay-filter="getUrls-form-submit" data-type="submit">获取图片url的值-->
<!-- </button>-->
<!-- </div>-->
<!-- </div>-->
</form>
</div>
</div>
</div>
</body>
<script>
layui.use(['form', 'layer', 'upload'], function () {
var $ = layui.jquery,
layer = layui.layer,
form = layui.form,
upload = layui.upload,
imgsId,
uploadDemoViewId,
uploadIconId,
importImg,
imgItemInfo,
photo_type,
count = 1;
//查看更多
$(document).on('click', '[id^=btn-more]', function () {
let more = $(this).next().attr('id')
layer.open({
type: 1,
skin: 'ayui-layer-nobg',
maxHeight: 960,
title: false,
shadeClose: true, //开启遮罩关闭
content: $('#' + more),
area:['900px','500px'],
success: function () {
$('#' + more).removeClass('layui-hide')
}
});
})
//删除图片
$(document).on('click', '[id^=delImg]', function () {
//判断哪一行的照片上传
photo_type = ($(this).attr('id')).split('-')
photo_type = photo_type[1]
var importImgF = $('#imgItemInfo-'+ photo_type).find('div:first');
var empt = $(this).parent().parent().parent();
var nextImgSrc = $(this).parent().parent().parent().next().find('img').attr('src');
//判断当前DIV后面的div的url是否为空
if (!nextImgSrc) {
//判断是否为第一个
if (importImgF.attr('id') === empt.attr('id')) {
//-是 ,清空第一个 最后面的删除
//图片url清空
empt.find('img').attr('src','');
$(this).parent().parent().addClass('layui-hide');
importImgF.find('i:first').removeClass('layui-hide');
count--;
$('#importImg-'+ photo_type + '-' + count).remove();
} else {
// -否,删除当前
empt.remove();
}
} else {
//如果有值删除当前div
empt.remove();
}
let more_length = $('#more-'+ photo_type).children().length
if (more_length != 0){
if ($('#imgItemInfo-'+ photo_type).children().length < 7){
let first = $('#more-'+ photo_type).find('div:first')
$('#imgItemInfo-'+ photo_type).children().eq(-2).after(first.prop('outerHTML'))
first.remove()
}
}else{
$('#btn-more-'+ photo_type).addClass('layui-hide')
}
return false;
});
//图片预览
$(document).on('click', '[id^=preImg]', function () {
var iHtml = "<img src='" + $(this).parent().parent().find('img:first').attr('src') + "' style='width: 100%; height: 100%;'/>";
layer.open({
type: 1,
shade: false,
title: false, //不显示标题
area: ['40%', '60%'],
content: iHtml //捕获的元素,注意:最好该指定的元素要存放在body最外层,否则可能被其它的相对元素所影响
});
return false;
});
//图片绑定鼠标悬浮
$(document).on("mouseenter", ".img", function () {
//鼠标悬浮
$(this).find('div:first').removeClass('layui-hide');
}).on("mouseleave", ".img", function () {
//鼠标离开
$(this).find('div:first').addClass('layui-hide');
});
$(document).on('click', '[id^=imgDivs]', function () {
//判断哪一行的照片上传
photo_type = ($(this).attr('id')).split('-')
photo_type = photo_type[1]
//给id赋值
uploadIconId = $(this).find('i').attr('id');
uploadDemoViewId = $(this).next().attr('id');
imgsId = $(this).next().find('img').attr('id');
importImg = $(this).parent().eq(0).attr('id');
imgItemInfo = $(this).parent().parent().eq(0).attr('id');
$('#importModel').click();
});
upload.render({
elem: '#importModel'
, multiple: true
, url: '/index/index/upload' //改成您自己的上传接口
, data:{
'a_id': 'DX20200227001'
}
, done: function (res) {
if (res.code !== 2000) {
return layer.msg('上传失败')
}
$('#' + imgsId).attr('src', res.data.file_path);
$('#' + uploadDemoViewId).removeClass('layui-hide');
$('#' + uploadIconId).addClass('layui-hide');
let length = $('#imgItemInfo-'+photo_type).children().length
console.log(length)
if (length > 6){
let temp_num = imgsId.split('-')
temp_num = temp_num[2]
let temp = $('#importImg-'+ photo_type + '-' + temp_num)
$('#more-'+ photo_type).append(temp.prop('outerHTML'))
temp.remove()
$('#btn-more-'+ photo_type).removeClass('layui-hide')
}
$('#imgItemInfo-'+ photo_type).append(
'<div class="layui-upload-drag-self" id="importImg-'+ photo_type + '-' + count + '">' +
'<div id="imgDivs-'+ photo_type + '-' + count + '">' +
'<i class="layui-icon" id="uploadIcon-'+ photo_type + '-' + count + '">  </i>' +
'</div>' +
'<div class="img layui-hide" id="uploadDemoView-'+ photo_type + '-' + count + '">' +
'<img class="layui-upload-img" id="imgs-'+ photo_type + '-' + count + '" src="">' +
'<div class="handle layui-hide" id="handle-'+ photo_type + '-' + count + '">' +
'<i class="layui-icon icon-myself" id="preImg-'+ photo_type + '-' + count + '"></i>' +
'<i class="layui-icon icon-myself" id="delImg-'+ photo_type + '-' + count + '">ဇ</i>' +
'</div>' + '</div>' + '</div>'
);
count++;
}
});
form.on('submit(getUrls-form-submit)', function (data) {
//使用data.field获取不到值
var imgs = $('[id^=imgs]');
var imgArray=[];
imgs.each(function () {
var url=$(this).attr('src');
//滤空
if (url){
imgArray.push(url);
}
});
alert(JSON.stringify(imgArray));
return false;
});
});
</script>
</html>
图片上传管理
于 2023-02-17 10:43:51 首次发布