DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Layuititle>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="./layui/css/layui.css">
<script src="./jquery-1.9.1.min.js">script>
<style>
.add_file {
width: 350px;
height: 38px;
box-sizing: border-box;
position: relative;
}
.add_file::after {
content: '';
height: 0;
display: block;
visibility: hidden;
clear: both;
}
.add_file button {
float: left;
}
.show_files {
width: 200px;
height: 38px;
border: 1px solid black;
box-sizing: border-box;
text-align: center;
line-height: 38px;
color: black;
font-size: 14px;
margin-left: 94px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.add_file .cover_add {
position: absolute;
left: 0;
top: 0;
width: 98px;
height: 38px;
z-index: 3;
background: transparent;
display: none;
}
style>
head>
<body>
<div class="add_file">
<button type="button" class="layui-btn layui-btn-normal" id="test8">选择文件button>
<div class="show_files">div>
<div class="cover_add">div>
div>
<script src="./layui/layui.js">script>
<script>
let obj = {
suc: false
}
$('.add_file').click(function () {
if (!obj.suc) {
obj.suc = true;
isAdd();
}
})
$('.add_file > .show_files').click(function (e) {
return false;
})
function isAdd() {
obj.suc ? $('.cover_add').show() : $('.cover_add').hide();
}
layui.use(['upload', 'element', 'layer'], function () {
upload = layui.upload,
element = layui.element,
layer = layui.layer;
$('.show_files').html('未选中文件');
//常规使用 - 普通图片上传
//选完文件后不自动上传
upload.render({
elem: '#test8',
url: 'https://httpbin.org/post' //此处配置你自己的上传接口即可
,
auto: true,
choose: function (obj) {
var that = this;
var files = this.files = obj.pushFile(); //将每次选择的文件追加到文件队列
//读取本地文件
obj.preview(function (index, file, result) {
$('.show_files').html(file.name ? file.name : '未选中文件');
});
},
before: function (obj) { //obj参数包含的信息,跟 choose回调完全一致,可参见上文。
layer.load(); //上传loading
},
// bindAction: '#test9',
done: function (res) {
layer.closeAll('loading'); //关闭loading
layer.msg('上传成功');
obj.suc = false;
isAdd()
},
error: function () {
layer.closeAll('loading'); //关闭loading
console.log(obj, '空')
obj.suc = false;
isAdd();
}
});
})
script>
body>
html>