You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

206 lines
7.6 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>图片上传示例</title>
<link rel="stylesheet" href="./component/layui/css/layui.css" media="all">
<style>
.upload-area {
margin: 20px 0;
}
/* 添加到你的样式表中 */
.delete-button {
display: block; /* 使按钮宽度填满其容器 */
margin-top: 10px; /* 按钮与图片之间的间距 */
padding: 8px 16px;
font-size: 14px; /* 根据需要调整字体大小 */
color: #fff; /* 文字颜色 */
background-color: #f44336; /* 背景颜色 */
border: none; /* 无边框 */
border-radius: 4px; /* 圆角边框 */
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); /* 阴影效果 */
cursor: pointer; /* 鼠标悬停时显示手形图标 */
transition: all 0.3s ease; /* 平滑过渡效果 */
}
.delete-button:hover {
background-color: #e53935; /* 鼠标悬停时的背景颜色 */
}
/* 父元素的样式 */
.ew-datagrid-item {
display: flex;
justify-content: center; /* 水平居中 */
align-items: center; /* 垂直居中 */
/* 其他样式... */
}
.project-list-item {
display: flex;
flex-direction: column; /* 设置为垂直布局 */
align-items: center; /* 水平居中 */
margin-bottom: 10px; /* 根据需要添加底部外边距 */
}
.project-list-item-cover {
cursor: pointer; /* 当鼠标悬停在图片上时显示小手形状 */
/* 其他样式... */
}
/* 自定义关闭按钮的样式 */
.layui-layer-title {
background-color: #333; /* 标题栏背景色 */
color: #fff; /* 标题栏文字颜色 */
}
/* 增强关闭按钮的可见性 */
.layui-layer-close1 {
color: #fff; /* 关闭按钮文字颜色 */
text-shadow: none; /* 取消文字阴影 */
}
.layui-layer-close1:hover {
color: #f00; /* 鼠标悬停时关闭按钮文字颜色 */
}
</style>
</head>
<body>
<div class="upload-area">
<form class="layui-form" action="/upload" method="post" enctype="multipart/form-data">
<div class="layui-form-item">
<label class="layui-form-label">上传图片:</label>
<div class="layui-input-inline">
<button type="button" class="layui-btn" id="uploadImage">
<i class="layui-icon">&#xe67c;</i>上传图片
</button>
</div>
</div>
</form>
</div>
<div class="layui-row layui-col-space10">
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-body">
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
<legend>图片列表</legend>
</fieldset>
<div class="layui-row layui-col-space30" style="height: 300px; overflow:auto" id="LAY_Images">
</div>
</div>
</div>
</div>
</div>
<script src="./component/layui/layui.js"></script>
<script>
layui.use(['form', 'upload', 'jquery'], function () {
var form = layui.form;
var upload = layui.upload;
var $ = layui.jquery;
//放大图片
function ImgClick(obj) {
var img_url = obj.src.split("?")[0];
var id = obj.id;
window.location.href = 'ManageImg.html?img_url=' + img_url + '&id=' + id;
}
//删除图片
function deleteImg(id, img_url) {
// 弹出确认框
layer.confirm('确定要删除这个图片吗?', {
title: '提示'
, btn: ['确定', '取消'] // 按钮
, icon: 3 // 图标
}, function (index) {
//删除
$.ajax({
type: "POST",
url: "/QingLong/HuiYa/AdminDeleteInputImage",
dataType: 'json',
data: {
"id": id
},
async: false,
success: function (res) {
// 假设删除成功后可以在这里做一些UI上的反馈如提示用户删除成功
layer.msg('删除成功!', {icon: 1});
// 关闭确认框
layer.close(index);
// 刷新
AdminImageList();
}
});
}, function (index) {
// 关闭确认框
layer.close(index);
});
}
function AdminImageList() {
$.ajax({
type: "GET",
url: "/QingLong/HuiYa/AdminImageList",
async: false,
success: function (data) {
$("#LAY_Images").empty();
$.each(data, function (index, item) {
$("#LAY_Images").append(
"<div class='layui-col-md2 ew-datagrid-item'>" +
"<div class='project-list-item'>" +
"<img class='project-list-item-cover' id='" + item.id + "' src='" + item.img_url + "?x-oss-process=image/resize,w_362,limit_0" + "' />" +
"<button class='delete-button' id='" + item.id + "' data-img-url='" + item.img_url + "'>删除</button>" +
"</div>" +
"</div>"
);
});
// 使用事件委托为图片和删除按钮绑定事件
$("#LAY_Images").on('click', '.project-list-item-cover', function () {
ImgClick(this);
}).on('click', '[data-img-url]', function () {
var imgUrl = $(this).data('img-url');
var id = $(this).attr('id');
deleteImg(id, imgUrl);
});
// 如果需要,重新渲染 Layui 组件
form.render(); // 确保调用正确的 Layui 方法
}
});
}
AdminImageList();
// 图片上传配置
var uploadImage = upload.render({
elem: '#uploadImage' // 绑定元素
, multiple: true
, url: '/QingLong/HuiYa/AdminUpload' // 上传接口
, accept: 'file' //普通文件
, number: 10//上传个数
, acceptMime: 'image/jpeg, image/png'
, exts: 'jpg|png|bmp|jpeg' //只允许上传压缩文件
, done: function (res) { // 上传成功后的回调
AdminImageList();
}
, error: function () {
// 请求异常回调
}
});
// 监听提交
form.on('submit(upload)', function (data) {
// 发送数据到服务器
// 这里需要根据实际情况调整例如使用AJAX发送表单数据
//console.log(data.field); // 表单数据
AdminImageList();
return false; // 阻止表单跳转
});
});
</script>
</body>
</html>