From 7e37c24f4435638f1cce6cac5b146c3b902bef13 Mon Sep 17 00:00:00 2001
From: wanggeng <450292408@qq.com>
Date: Wed, 1 Jun 2022 00:33:58 +0800
Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0layui=E5=B7=A5=E5=85=B7?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../static/assets/css/layui-util.css | 77 ++++++++++++++++
.../resources/static/assets/js/layui-util.js | 90 +++++++++++++++++--
2 files changed, 162 insertions(+), 5 deletions(-)
create mode 100644 common/src/main/resources/static/assets/css/layui-util.css
diff --git a/common/src/main/resources/static/assets/css/layui-util.css b/common/src/main/resources/static/assets/css/layui-util.css
new file mode 100644
index 00000000..36a75cd5
--- /dev/null
+++ b/common/src/main/resources/static/assets/css/layui-util.css
@@ -0,0 +1,77 @@
+/* 上传图片 */
+.form-upload-image {
+ position: relative;
+ display: inline-block;
+ margin: 10px 10px 0 0;
+}
+
+.form-upload-image:last-child {
+ margin-right: 0;
+}
+
+.form-upload-image img {
+ height: 100px;
+}
+
+.form-upload-image .delete-btn {
+ position: absolute;
+ top: 0;
+ right: 0;
+ margin: 0;
+}
+
+.layui-form-item .upload-image-box {
+ clear: both;
+ width: 100%;
+ padding: 0;
+ display: block;
+}
+
+/* 上传附件 */
+.form-upload-file {
+
+}
+
+.form-upload-file .operation {
+ text-align: center;
+}
+
+.form-upload-file .delete-btn {
+ margin: 0;
+}
+
+/* 上传视频 */
+.form-upload-video {
+ position: relative;
+ display: inline-block;
+ margin: 10px 10px 0 0;
+}
+
+.form-upload-video:last-child {
+ margin-right: 0;
+}
+
+.form-upload-video .delete-btn {
+ position: absolute;
+ top: 0;
+ right: 0;
+ margin: 0;
+}
+
+/* 上传音频 */
+.form-upload-audio {
+ position: relative;
+ display: inline-block;
+ margin: 10px 10px 0 0;
+}
+
+.form-upload-audio:last-child {
+ margin-right: 0;
+}
+
+.form-upload-audio .delete-btn {
+ position: absolute;
+ top: 0;
+ right: 0;
+ margin: 0;
+}
\ No newline at end of file
diff --git a/common/src/main/resources/static/assets/js/layui-util.js b/common/src/main/resources/static/assets/js/layui-util.js
index 7693e02b..8443a676 100644
--- a/common/src/main/resources/static/assets/js/layui-util.js
+++ b/common/src/main/resources/static/assets/js/layui-util.js
@@ -19,8 +19,7 @@ function LayuiUtil(layui, viewer) {
var isShow = opt.isShow;
var defaultAllowExts = ['jpg', 'png', 'gif', 'bmp', 'jpeg'];
var allowExts = opt.allowExts;
- allowExts = allowExts && (allowExts instanceof Array) ? defaultAllowExts.concat(allowExts).join('\\|') : defaultAllowExts.join('\\|');
-
+ allowExts = allowExts && (allowExts instanceof Array) ? defaultAllowExts.concat(allowExts).join('\|') : defaultAllowExts.join('\|');
var defaultAcceptMime = ['image/*'];
var acceptMime = opt.acceptMime;
acceptMime = acceptMime && (acceptMime instanceof Array) ? defaultAcceptMime.concat(acceptMime).join(',') : defaultAcceptMime.join(',');
@@ -133,7 +132,7 @@ function LayuiUtil(layui, viewer) {
var isShow = opt.isShow;
var allowExts = opt.allowExts;
var defaultAllowExts = ['pdf', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'wps', 'txt', 'rar', 'zip'];
- allowExts = allowExts && (allowExts instanceof Array) ? defaultAllowExts.concat(allowExts).join('\\|') : defaultAllowExts.join('\\|');
+ allowExts = allowExts && (allowExts instanceof Array) ? defaultAllowExts.concat(allowExts).join('\|') : defaultAllowExts.join('\|');
var defaultAcceptMime = [
'application/pdf',
'application/msword',
@@ -284,7 +283,7 @@ function LayuiUtil(layui, viewer) {
var defaultAllowExts = ['mp4'];
var allowExts = opt.allowExts;
- allowExts = allowExts && (allowExts instanceof Array) ? defaultAllowExts.concat(allowExts).join('\\|') : defaultAllowExts.join('\\|');
+ allowExts = allowExts && (allowExts instanceof Array) ? defaultAllowExts.concat(allowExts).join('\|') : defaultAllowExts.join('\|');
var defaultAcceptMime = ['video/mp4'];
var acceptMime = opt.acceptMime;
@@ -396,7 +395,7 @@ function LayuiUtil(layui, viewer) {
var defaultAllowExts = ['wav', 'mp3'];
var allowExts = opt.allowExts;
- allowExts = allowExts && (allowExts instanceof Array) ? defaultAllowExts.concat(allowExts).join('\\|') : defaultAllowExts.join('\\|');
+ allowExts = allowExts && (allowExts instanceof Array) ? defaultAllowExts.concat(allowExts).join('\|') : defaultAllowExts.join('\|');
var defaultAcceptMime = ['audio/wav', 'audio/mp3'];
var acceptMime = opt.acceptMime;
@@ -504,4 +503,85 @@ function LayuiUtil(layui, viewer) {
}
}
+ /**
+ * 下拉选择
+ */
+ this.select = function (opt) {
+ var self = this;
+ var url = opt.url;
+ var domId = opt.domId;
+ var name = opt.name;
+ var valueKey = opt.valueKey;
+ var nameKey = opt.nameKey;
+ var dataForm = opt.dataForm;
+ var selectedValue = opt.selectedValue;
+ var onInit = opt.onInit;
+ var onSelect = opt.onSelect;
+
+ $('#'+ domId).empty();
+ $('#'+ domId).append('');
+
+ /**
+ * 初始化选项
+ */
+ function initOption() {
+ // 得到数据?
+ $('#' + name).empty();
+ // if (selectedValue === '') {
+ // // 监听初始化
+ // onInit ? onInit(selectedValue) : null;
+ // form.render(null, dataForm);
+ // return;
+ // }
+ top.restAjax.get(url, {}, null, function (code, data) {
+ var options = '';
+ for (var i = 0, item; item = data[i++];) {
+ options += ''
+ }
+ $('#' + name).append(options)
+ form.render(null, dataForm);
+
+ // 监听初始化
+ onInit ? onInit(selectedValue) : null;
+ }, function (code, data) {
+ top.dialog.msg(data.msg);
+ });
+ }
+
+ /**
+ * 初始化选择
+ */
+ function initSelectEvent() {
+ form.on('select(' + name + 'Filter)', function (data) {
+ var option = self.selectedOption('#' + name, data.value);
+ onSelect ? onSelect(data, option) : null;
+ // 联动
+ if (data.value) {
+ onInit ? onInit(data.value) : null;
+ }
+ });
+ }
+
+ initOption();
+ initSelectEvent();
+
+ }
+
+ /**
+ * 获取选择的option
+ *
+ * @param selectId 下拉框ID
+ * @param selectedValue 选择的值
+ * @return {DOMStringMap|null}
+ */
+ this.selectedOption = function (selectId, selectedValue) {
+ var options = $(selectId).children();
+ for (var i = 0, option; option = options[i++];) {
+ if (selectedValue === option.value) {
+ return option;
+ }
+ }
+ return null;
+ }
+
}
\ No newline at end of file