schlägt der Validator Alarm und meldet, dass ich mehrmals die gleich ID vergebe.
(Was ja auch stimmt, aber durch den Array sollte sich das doch aufheben, oder?)
Die Labels werden aber trotzdem den richtigen Radio-Buttons zugeordnet.
Darf man das so verwenden? oder muss man auf andere Möglichkeiten
der Benennug zurückgreifen?
Mir ist durchaus klar worauf man mit PHP Zugriff hat. Da eine Gruppe von Radiobuttons aber zu jenen Formularelementen zählt, die maximal einen skalaren String an das Script übergeben, wäre eine Array-Notation hier, im Gegensatz zu den Mehrdimensionalen-Typen wenig sinnvoll.
Eine Bennunge antwort1 … antwort(n) wäre zwar durchaus möglich, ich habe diese Frage aber gestellt da man dann sehr leicht den Überblick verlieren kann(z.B bei 20 Fragen alla 5-7 Anworten). Wohin gehört jetzt Antwort 97?
Darum würde ich das ganze gerne besser ordnen und in einem Mehrdimensionalen Array ablegen. Jeder Frage würden dann die Antwort so zugewiesen. Dadurch könnte man auch schneller die entsprechenden Labels erkennen,
aber weil der Validator hier rumkommt, frage ich mich ob man das so lösen darf…
Sorry, ich habe übersehen, dass es Radio-Buttons sind.
Ich kann deine Frage nicht direkt beantworten, aber ich wüsste nicht, warum deine Lösung schlimm sein sollte. Es sind „nur“ Validierungsfehler, und ich hatte Seiten, auf denen sich gleiche IDs nicht vermeiden ließen. Diese Art von Validierungsfehler wird keine Suchmaschine, keinen Screenreader und auch keinen User stören. Und Layout- bzw. Browserdarstellungs-Fehler entstehen dadurch auch nicht…
Das war zwar wie bereits oben beschrieben nicht das Gesuchte, weil es sich um Radiobuttons handelt, aber deine Anwort bezüglich der Dimensionen war äußerst hilfreich
Trotzdem bleibt die Frage bestehen , ob man dies Notation für die Id’s nutzen darf um eine bessere Strukturierung der Labels und Buttons zu erreichen.
Ich würde fast sagen bei HTML5-Dokumenten sind auch [ und ] in ID-Attributen zulässig. HTML5 verbietet einzig Leerzeichen in dem Attribut, sonst ist alles erlaubt. http://www.w3.org/TR/html5/dom.html#the-id-attribute
Warum dann überhaupt diese Notation? Du erhältst innerhalb eines foreach() für jede Dimension des Arrays index->value bzw. key->value. Damit lassen sich unique IDs erstellen.
Das wäre so, als würde man, fragen, ob sich mit der Zange auch ein Nagel in die Wand schlagen ließe. Sofern die Zange schwer genug, wird es wahrscheinlich gehen, aber warum sollte man das tun, wenn es für die Aufgabe besser geeignete Werkzeuge gibt?
HTML ist lediglich für das Markup zuständig. Die Funktionalität übernehmen Scriptsprachen.