Ich erstelle eine Quiz-Webanwendung mit PHP. Jede Frage besteht aus einer separaten Frage <label>
und bietet 4 Auswahlmöglichkeiten, mit denen radio buttons
der Benutzer seine Antwort auswählen kann. Der aktuelle HTML-Code für eine einzelne Frage sieht folgendermaßen aus:
<label for="349">What is my middle name?</label>
<br>
<input id="349" type="radio" value="1" name="349">Abe
<br>
<input id="349" type="radio" value="2" name="349">Andrew
<br>
<input id="349" type="radio" value="3" name="349">Andre
<br>
<input id="349" type="radio" value="4" name="349">Anderson
<br>
Ich möchte, dass der Benutzer die Möglichkeit hat, auf den mit dem Optionsfeld verknüpften Text zu klicken. Im Moment kann der Benutzer nur auf das Optionsfeld selbst klicken - was ich als ziemlich umständliche Aufgabe empfinde.
Ich habe gelesen , dass eine bestimmte Optionsfeldauswahl nicht ausgewählt werden kann, indem ich auf den Auswahltext klicke und der Vorschlag darauf hinweist, dass die for
und id
Attribute der Tags übereinstimmen. Ich habe das getan und es funktioniert immer noch nicht.
Meine Frage ist: Ich möchte in der Lage sein, auf den Text eines <input type="radio">
Objekts zu klicken , anstatt nur das Optionsfeld selbst auswählen zu können. Ich weiß, dass ich bereits darüber gelesen habe, kann aber anscheinend keine Lösung für mein Problem finden. Jede Hilfe oder Anregungen werden sehr geschätzt!
Es scheint einen kleinen unklickbaren Abstand zwischen dem Optionsfeld und dem Etikett zu geben, wenn dies gemäß Nathans Antwort erfolgt. So fügen Sie sie nahtlos hinzu (siehe diesen Artikel ):
quelle
<input id="349" type="radio" value="1" name="question1"><label for="349"> Abe</label>
abzulegen (keine Leerzeichen oder Zeilenumbrüche zwischen den Tags)margin: 3px 3px 0 5px;
(dies ist in Firefox auffälliger, da standardmäßig ein Hover-Effekt auftritt), der mit CSS behoben werden kann, indem der Rand entfernt und durch Auffüllen ersetzt wird.Das Etikett sollte sich um jede Antwort befinden, z. B. um Abe, Andrew usw., und es muss für jede von ihnen eindeutig sein.
quelle
Durch das Verschachteln des Eingabe-Tags in das Label-Tag wird sichergestellt, dass das Label direkt neben dem Optionsfeld angezeigt wird. Mit den zuvor vorgeschlagenen Ansätzen können Sie das Label-Tag an einer beliebigen Stelle in der HTML-Datei einfügen und beim Klicken das zugehörige Optionsfeld auswählen. Überprüfen Sie dies heraus:
Wenn Sie dies stattdessen tun, wird dieser Fehler behoben:
quelle
Sie können es so machen
Wenn Sie also auf den Text oder die Beschriftung klicken, wird das Optionsfeld aktiviert. Aber wenn Sie das tun ...
und Sie fügen dies zu dem Code hinzu, den ich kurz zuvor geschrieben habe. Wenn Sie dann auf das 2. Etikett klicken, wird auch das Radio ausgewählt.
quelle
Ich mache das schon seit Jahren, aber keines davon funktioniert für mich mit Variablen.
und hier ist die Quelle:
quelle