From 8fc1367a60495859c019976b7a1bd7b667c814c3 Mon Sep 17 00:00:00 2001 From: xxm Date: Tue, 18 Aug 2026 00:31:13 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=A0=94=E7=A9=B6Tab=E5=A4=87=E9=80=89?= =?UTF-8?q?=E8=A1=A8=E6=A0=BC=E9=94=99=E4=BD=8D(v3=E5=AE=8C=E6=95=B4)?= =?UTF-8?q?=E2=80=94=E2=80=94renderRegimeRow=E5=8A=A0bkKey+=E8=A1=8Cdata-b?= =?UTF-8?q?k+hidden,=E5=A4=87=E9=80=89=E5=8C=BA=E7=9B=B4=E6=8E=A5=E8=BF=9B?= =?UTF-8?q?tbody=E5=8E=BB=E5=B5=8C=E5=A5=97table?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- static/index.html | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/static/index.html b/static/index.html index 746b68dc..1963c1ee 100644 --- a/static/index.html +++ b/static/index.html @@ -2648,7 +2648,7 @@ function renderStrategyTable(strategies) { if (comp >= 75) return 'good'; return 'ok'; }; - const renderRegimeRow = (s, rg) => { + const renderRegimeRow = (s, rg, bkKey) => { // 2026-08-15 行级激活按策略自身(后端已按所属市场温区算好 s.current),不再按表格 isCur const rw = (s.regime_winrates || {})[rg] || {}; const rwPf = rw.portfolio || null; @@ -2702,7 +2702,8 @@ function renderStrategyTable(strategies) { } const rGradeBadge = rGrade && rGrade !== 'ok' && rGrade !== 'good' && rGrade !== 'great' ? '' : ''; const isActive = s.current === true; - return '' + + const _bkAttr = bkKey ? ' data-bk="' + bkKey + '" class="hidden"' : ''; + return '' + '' + s.version + ' ' + rStateBadge + ((s.market && s.market !== 'all') ? ' ' + (s.market === 'hk' ? '港' : 'A') + '' : '') + '' + '' + (s.name || '') + (smallSample ? ' ⚠️' : '') + ' ' + (rGrade ? '' + GRADE_STD[rGrade].label + '' : '') + '' + @@ -2817,10 +2818,8 @@ function renderStrategyTable(strategies) { html += '' + ''; - html += '' + - '' + - '' + backup.map(s => renderRegimeRow(s, rg)).join('') + '
' + - ''; + // 2026-08-17 修复:备选行直接进同一 tbody(renderRegimeRow 传 bkKey, 行加 data-bk+hidden),列宽与表头对齐 + html += backup.map(s => renderRegimeRow(s, rg, marketLabel + rg)).join(''); } html += ''; return html;