diff --git a/onchain_scout_gate/static/app.js b/onchain_scout_gate/static/app.js index aad6d41..0a5b12c 100644 --- a/onchain_scout_gate/static/app.js +++ b/onchain_scout_gate/static/app.js @@ -721,28 +721,59 @@ function syncKeySlTpFields() { if (tpEl) tpEl.style.display = mode === "trend_manual" ? "" : "none"; } +function wireKeyMonitorSegGroup(groupId, hiddenInputId, onChange) { + const group = document.getElementById(groupId); + const hidden = document.getElementById(hiddenInputId); + if (!group || !hidden) return; + group.addEventListener("click", (ev) => { + const btn = ev.target.closest && ev.target.closest(".matrix-seg-btn"); + if (!btn) return; + group.querySelectorAll(".matrix-seg-btn").forEach((b) => b.classList.remove("is-active")); + btn.classList.add("is-active"); + hidden.value = btn.getAttribute("data-value") || ""; + if (onChange) onChange(); + }); +} + +function initKeyMonitorSegGroups() { + wireKeyMonitorSegGroup("keyMonitorTypeSeg", "keyMonitorTypeInput"); + wireKeyMonitorSegGroup("keyDirectionSeg", "keyDirectionInput"); + wireKeyMonitorSegGroup("keySlTpModeSeg", "keySlTpModeInput", syncKeySlTpFields); +} + +function renderKeyMonitorActiveList(rows) { + const target = document.getElementById("keyMonitorActive"); + if (!target) return; + target.innerHTML = ""; + if (!rows.length) { + target.innerHTML = '
GEMMA 漏斗仅供参考;在此录入上/下沿。箱体突破与收敛突破均支持「标准突破」或「趋势突破」(无 1.5H 方案)。
// 规则加载中…
-