From b97c42d2e4156887235be99a49255185d5b539fe Mon Sep 17 00:00:00 2001 From: qiuxiang <394405259@qq.com> Date: Mon, 26 Oct 2026 20:37:30 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=AE=89=E8=A3=85?= =?UTF-8?q?=E8=B4=B9=E9=A1=B5=E7=AD=BE=E8=BF=94=E5=9B=9E=E5=88=87=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../installation-fee-summary.blade.php | 20 +++++++++++-------- tests/Feature/Business/ManagementCrudTest.php | 6 +++++- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/resources/views/business/pages/partials/installation-fee-summary.blade.php b/resources/views/business/pages/partials/installation-fee-summary.blade.php index 51075a4c..649a716d 100644 --- a/resources/views/business/pages/partials/installation-fee-summary.blade.php +++ b/resources/views/business/pages/partials/installation-fee-summary.blade.php @@ -436,6 +436,14 @@ padding: 0; } + .installation-fee-panel[hidden] { + display: none !important; + } + + .installation-fee-panel.is-active:not([hidden]) { + display: block !important; + } + .installation-fee-platform-summary table { width: 100%; min-width: 32rem; @@ -625,7 +633,6 @@ var platformEmptyEl = dialog.querySelector('[data-installation-fee-platform-empty]'); var countEl = dialog.querySelector('[data-installation-fee-count]'); var scrollEl = dialog.querySelector('[data-installation-fee-scroll]'); - var tabsEl = dialog.querySelector('.installation-fee-tabs'); var tabButtons = Array.from(dialog.querySelectorAll('[data-installation-fee-tab]')); var tabPanels = Array.from(dialog.querySelectorAll('[data-installation-fee-panel]')); var allRows = []; @@ -1029,14 +1036,11 @@ openDialog(); refresh(false); }); - tabsEl.addEventListener('click', function (event) { - var tab = event.target.closest('[data-installation-fee-tab]'); - if (!tab || !tabsEl.contains(tab)) { - return; - } - activateTab(tab.dataset.installationFeeTab, false); - }); tabButtons.forEach(function (tab, index) { + tab.addEventListener('click', function (event) { + event.preventDefault(); + activateTab(tab.dataset.installationFeeTab, false); + }); tab.addEventListener('keydown', function (event) { var nextIndex = null; if (event.key === 'ArrowRight') { diff --git a/tests/Feature/Business/ManagementCrudTest.php b/tests/Feature/Business/ManagementCrudTest.php index ebb7eeb4..d0706e15 100644 --- a/tests/Feature/Business/ManagementCrudTest.php +++ b/tests/Feature/Business/ManagementCrudTest.php @@ -295,6 +295,9 @@ class ManagementCrudTest extends FeatureTestCase ->assertSee('data-installation-fee-panel="platform"', false) ->assertSee('data-installation-fee-panel="detail"', false) ->assertSee('installation-fee-panel is-active', false) + ->assertSee('.installation-fee-panel[hidden]', false) + ->assertSee('display: none !important;', false) + ->assertSee('.installation-fee-panel.is-active:not([hidden])', false) ->assertSeeText('店铺明细') ->assertSee('overflow-x: auto', false) ->assertSee('data-installation-fee-scroll', false) @@ -325,7 +328,8 @@ class ManagementCrudTest extends FeatureTestCase ->assertSee('currentTotal.textContent = wanYuan(total)', false) ->assertSee('function activateTab(name, focusTab)', false) ->assertSee("panel.style.display = selected ? 'block' : 'none'", false) - ->assertSee("tabsEl.addEventListener('click'", false) + ->assertSee("tab.addEventListener('click'", false) + ->assertSee('event.preventDefault();', false) ->assertSee("event.key === 'ArrowRight'", false) ->assertSeeText('平台') ->assertSeeText('店铺名称') -- 2.47.2