<div class="layui-fluid layui-anim febs-anim" id="febs-aiKnowledgeFile-add" lay-title="新增">
|
<div class="layui-row febs-container">
|
<div class="layui-col-md12">
|
<div class="layui-fluid" id="aiKnowledgeFile-add">
|
<form class="layui-form" action="" lay-filter="aiKnowledgeFile-add-form">
|
<div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
|
<ul class="layui-tab-title">
|
<li class="layui-this">基础信息</li>
|
</ul>
|
<div class="layui-tab-content">
|
<div class="layui-tab-item layui-show">
|
<div class="layui-row layui-col-space10 layui-form-item">
|
<div class="layui-col-lg12">
|
<label class="layui-form-label febs-form-item-require">文件上传:</label>
|
<div class="layui-input-block">
|
<div class="layui-upload">
|
<button type="button" class="layui-btn layui-btn-normal" id="test1">选择文件</button>
|
<div class="layui-upload-list">
|
<input type="hidden" name="savePath" id="savePath">
|
<input type="hidden" name="name" id="name">
|
<div class="layui-progress layui-progress-big" lay-filter="demo" id="uploadProgress" style="display: none;">
|
<div class="layui-progress-bar layui-bg-green" lay-percent="0%"></div>
|
</div>
|
<table class="layui-table">
|
<thead>
|
<tr><th>文件名</th><th>大小</th><th>状态</th></tr>
|
</thead>
|
<tbody id="fileList">
|
<!-- 上传文件列表将在这里显示 -->
|
</tbody>
|
</table>
|
</div>
|
</div>
|
</div>
|
</div>
|
</div>
|
</div>
|
</div>
|
</div>
|
|
<div class="layui-form-item febs-hide">
|
<button class="layui-btn" lay-submit="" lay-filter="aiKnowledgeFile-add-form-submit" id="submit">保存</button>
|
</div>
|
</form>
|
</div>
|
</div>
|
</div>
|
</div>
|
|
<!-- 表格操作栏 end -->
|
<script data-th-inline="javascript">
|
layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree','dropdown', 'laydate', 'layedit', 'upload', 'element', 'table', 'xmSelect','jquery'], function () {
|
var $ = layui.jquery,
|
febs = layui.febs,
|
layer = layui.layer,
|
table = layui.table,
|
formSelects = layui.formSelects,
|
treeSelect = layui.treeSelect,
|
form = layui.form,
|
laydate = layui.laydate,
|
eleTree = layui.eleTree,
|
$view = $('#aiKnowledgeFile-add'),
|
layedit = layui.layedit,
|
upload = layui.upload,
|
validate = layui.validate,
|
element = layui.element;
|
|
form.render();
|
element.render('progress');
|
|
// 文件上传配置
|
var uploadInst = upload.render({
|
elem: '#test1',
|
url: ctx + 'admin/goods/fileUploadEsc', // 上传接口
|
accept: 'file',
|
size: 50 * 1024, // 50MB
|
exts: '', // 不限制文件类型
|
auto: true, // 选择文件后自动上传
|
before: function(obj) {
|
// 显示进度条
|
$('#uploadProgress').show();
|
// 预读本地文件示例,不支持ie8
|
obj.preview(function(index, file, result) {
|
// 显示文件信息
|
var fileSize = (file.size / 1024 / 1024).toFixed(2) + 'MB';
|
var tr = $(['<tr id="upload-'+ index +'">',
|
'<td>'+ file.name +'</td>',
|
'<td>'+ fileSize +'</td>',
|
'<td><div class="layui-progress layui-progress-big" lay-filter="progress-'+ index +'">',
|
'<div class="layui-progress-bar layui-bg-green" lay-percent="0%"></div>',
|
'</div></td>',
|
'</tr>'].join(''));
|
|
$('#fileList').html(tr);
|
element.render('progress');
|
});
|
},
|
done: function(res, index, upload) {
|
if (res.code == 200) { // 上传成功
|
// 保存文件信息到隐藏字段
|
$('#savePath').val(res.data.path);
|
$('#name').val(res.data.title);
|
|
// 更新进度条为100%
|
element.progress('progress-'+index, '100%');
|
|
// 显示上传成功状态
|
$('#upload-'+index).find('td:eq(2)').html('<span style="color: #52c41a;">上传成功</span>');
|
febs.alert.success('文件上传成功');
|
|
return false;
|
} else {
|
this.error(index, upload);
|
}
|
},
|
error: function(index, upload) {
|
$('#upload-'+index).find('td:eq(2)').html('<span style="color: #ff5722;">上传失败</span>');
|
febs.alert.warn('文件上传失败');
|
},
|
progress: function(n, elem, res, index) {
|
element.progress('progress-'+index, n + '%'); // n为上传进度
|
element.progress('demo', n + '%'); // 总进度
|
}
|
});
|
|
// 表单数据提交函数
|
function submitFormData() {
|
var data = form.val('aiKnowledgeFile-add-form');
|
|
// 验证文件是否已上传
|
if (!data.name) {
|
febs.alert.warn('请先上传文件');
|
return;
|
}
|
|
$.ajax({
|
'url':ctx + 'admin/aiKnowledgeFile/add',
|
'type':'post',
|
'dataType':'json',
|
'headers' : {'Content-Type' : 'application/json;charset=utf-8'},
|
'traditional': true,
|
'data':JSON.stringify(data),
|
'success':function (res) {
|
if(res.code==200){
|
layer.closeAll();
|
febs.alert.success(res.message);
|
$('#febs-aiKnowledgeFile').find('#query').click();
|
}else{
|
febs.alert.warn(res.message);
|
}
|
},
|
'error':function () {
|
febs.alert.warn('服务器繁忙');
|
}
|
})
|
}
|
|
// 修改保存按钮行为,点击时直接提交表单数据
|
form.on('submit(aiKnowledgeFile-add-form-submit)', function () {
|
submitFormData();
|
return false;
|
});
|
|
});
|
</script>
|