Rolf B: Verschachteltes Form-Tag

Beitrag lesen

Hallo otto,

Leider taucht jetzt ein Seiteninhalt mit einem <input typ ='text' ... auf mit dem Statement 'required'. Das hat zur Folge, dass alle anderen Links und Funktionen nicht mehr funktionieren, wenn dieses Feld keinen Inhalt hat.

Links funktionieren sicherlich noch, die lösen keinen Submit des Forms aus. Es sei denn, du verwendest Oberflächenelemente, die wie Links aussehen, aber indirekt doch das Form submitten.

Das Grundproblem klingt aber nach Fußballspielen, ohne sich die Schuhe schmutzig machen zu wollen.

Entweder hat diese Inhaltskomponente den Bedarf, dieses Eingabeelement als Pflichtfeld zu haben, dann muss dieser Bedarf auch erfüllt werden. Oder sie hat ihn nicht, dann gehört da auch kein required hin.

Wenn dein Seiteninhalt aus Gruppen besteht, und jede Gruppe für sich ausgewertet wird, dann wäre es ggf. sinnvoll, jede Gruppe in ein eigenes Form zu setzen und dieses Form als "Geltungsbereich" der Validierung anzusehen. Forms zu schachteln geht jedenfalls nicht.

Wenn es unbedingt ein großes Form sein muss, solltest Du versuchen, das required Attribut loszuwerden und durch eine eigene, gruppierfähige Validierung zu ersetzen. Das ist nicht schön, und man soll normalerweise keine Browserfunktionalität nachbauen, aber wenn der Browser nun mal keine scoped validation hat... Du könntest die Validierattribute bspw. durch data-Attribute ersetzen, sowas wie data-required="true" oder data-pattern="...". Wenn dein Script entscheidet, dass eine Eingabegruppe relevant ist, könntest Du diese Ersatzattribute in die echten HTML Attribute kopieren, und ist sie es nicht, nimmst Du die Attribute wieder weg. Sind ja nur 6 (required, pattern, minlength, maxlength, min, max).

Ohne genauere Kenntnis deiner Fachlichkeit ist das allerdings alles Spekulatius.

Rolf

--
sumpsi - posui - obstruxi