From ea7ae41e7191675b1ff324e64a7a5c45e931e4b6 Mon Sep 17 00:00:00 2001 From: augushong Date: Fri, 9 Jan 2026 22:35:05 +0800 Subject: [PATCH] =?UTF-8?q?feat(upload):=20=E4=B8=BA=E4=B8=8A=E4=BC=A0?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E6=B7=BB=E5=8A=A0=E6=96=87=E4=BB=B6=E5=90=8D?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E5=92=8C=E6=8B=96=E6=8B=BD=E6=8E=92=E5=BA=8F?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../static/plugs/ulthon-admin/ulthon-admin.js | 40 +++++++++++++++++-- 1 file changed, 37 insertions(+), 3 deletions(-) diff --git a/public/static/plugs/ulthon-admin/ulthon-admin.js b/public/static/plugs/ulthon-admin/ulthon-admin.js index b71bbff..561bee3 100644 --- a/public/static/plugs/ulthon-admin/ulthon-admin.js +++ b/public/static/plugs/ulthon-admin/ulthon-admin.js @@ -2545,7 +2545,7 @@ } return dataField; }, - upload: function () { + upload: function () { var uploadList = document.querySelectorAll("[data-upload]"); var uploadSelectList = document.querySelectorAll("[data-upload-select]"); @@ -2624,26 +2624,60 @@ if (urlString.length > 0) { var parant = $(this).parent('div'); var liHtml = ''; + var filenameArray = []; + if (uploadFilenameField) { + var filenameVal = $(elemFilenameField).val() || ''; + if (filenameVal) { + filenameArray = filenameVal.split(uploadSign); + } + } + $.each(urlArray, function (i, v) { // 获取链接扩展名 var ext = v.substr(v.lastIndexOf('.') + 1); + var currentFilename = filenameArray[i] || ''; + currentFilename = currentFilename.replace(/"/g, '"'); if (extGroup.image.indexOf(ext) != -1) { // 是图片 - liHtml += '
  • ×
  • \n'; + liHtml += '
  • ×
  • \n'; } else { // 不是图片 // 遍历extGroup数组找到扩展名所在的索引 uploadIcon = admin.getExtGroupName(ext); - liHtml += '
  • ×
  • \n'; + liHtml += '
  • ×
  • \n'; } }); parant.after(''); + + var initSortable = function () { + var el = document.getElementById('bing-' + uploadNameKey); + if (el) { + new Sortable(el, { + animation: 150, + onEnd: function (evt) { + var newUrls = []; + var newFilenames = []; + $(el).find('.uploads-delete-tip').each(function () { + newUrls.push($(this).attr('data-upload-url')); + newFilenames.push($(this).attr('data-upload-filename')); + }); + $(elem).val(newUrls.join(uploadSign)); + if (uploadFilenameField) { + $(elemFilenameField).val(newFilenames.join(uploadSign)); + } + $(elem).trigger("input"); + } + }); + } + }; + + initSortable(); } });