Einsatz-je-Pfad-Feld war nicht bedienbar - auf das bewaehrte Muster umgebaut

User: "Einsatz je Pfad kann ich nichts eingeben".

URSACHE - mein erster Entwurf hat ein EIGENES Markup erfunden, statt das zu
nehmen, das im Projekt nachweislich funktioniert. Zwei Fehler darin:

(1) KEIN `inputmode`. Alle funktionierenden Felder des Projekts (SL, TP,
    Gewinn-Close, Notfall-Close) tragen `inputmode="decimal"` - am Handy
    erscheint sonst keine brauchbare Zahlentastatur. Das allein macht ein Feld
    praktisch unbedienbar, obwohl es sichtbar und technisch "aktiv" ist.
(2) Die Inputs steckten in einem <b> innerhalb einer `.kv`-Zeile. `.kv` ist
    `display:flex; align-items:baseline` und fuer das Muster
    <span>Label</span><b>Wert</b> gebaut - also fuer TEXT, nicht fuer
    Formularelemente.

BEHOBEN: identisches Markup wie die Trade-Leiste (`.tb-row` > `.tb-field` mit
<label> ueber <input>), plus `inputmode="decimal"` und `placeholder="global"`
statt "BRK"/"M15" - das macht zugleich sichtbar, was LEER bedeutet.

Zusaetzlich den Render gehaertet, damit der 1-s-Snapshot die Eingabe nicht
fressen kann: Feld mit Fokus wird gar nicht angefasst, und geschrieben wird nur
bei tatsaechlicher Aenderung (eine Zuweisung setzt sonst auch bei identischem
Text die Cursorposition zurueck).

⚠ LEHRE, die ueber diesen Fall hinausgeht: es gab in derselben Datei vier
funktionierende Vorbilder, und ich habe keines davon angesehen, bevor ich ein
neues Muster erfunden habe. Beim Hinzufuegen eines Bedienelements gehoert das
vorhandene Muster kopiert - dieselbe Klasse wie die dokumentierte Regel, beim
Wiederverwenden eines Backtest-Kerns die Live-KONFIGURATION mitzukopieren.

Reine Frontend-Aenderung (HTML/CSS/JS + v=184) - kein Neustart noetig, statische
Dateien werden je Request frisch von der Platte gelesen. Verifiziert: Tags
ausgeglichen (div 84/84, span 49/49), keine doppelten IDs, node --check gruen,
beide Felder mit inputmode im ausgelieferten HTML, v=184 wird ausgeliefert.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Axel Hocks
2026-08-19 19:22:56 +02:00
co-authored by Claude Opus 5
parent 8bbc58f336
commit 027267063d
3 changed files with 23 additions and 13 deletions
+9 -1
View File
@@ -174,7 +174,15 @@ function renderBrk(d) {
// wie beim Mindestgewinn-Feld).
[["am-brk", d.margin_brk], ["am-m15", d.margin_m15]].forEach(([id, v]) => {
const el = $streng(id);
if (el && document.activeElement !== el) el.value = (v > 0) ? v : "";
if (!el) return;
// ⚠ NICHT anfassen, solange das Feld den Fokus hat -- sonst frisst der
// 1-s-Snapshot die laufende Eingabe (der Grund, warum das Feld sich
// zuerst nicht bedienen liess).
if (document.activeElement === el) return;
const soll = (v > 0) ? String(v) : "";
// ⚠ Nur schreiben, wenn sich WIRKLICH etwas aendert: eine Zuweisung setzt
// auch bei gleichem Text die Cursorposition zurueck.
if (el.value !== soll) el.value = soll;
});
const b5 = d.squeeze_b5;
if (!b5) { box.classList.add("hidden"); return; }